browser-debugger-cli 0.6.1 → 0.6.4

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 (334) hide show
  1. package/README.md +64 -3
  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 +6 -10
  12. package/dist/cdp/protocol.js.map +1 -1
  13. package/dist/cdp/schema.d.ts.map +1 -1
  14. package/dist/cdp/schema.js +0 -2
  15. package/dist/cdp/schema.js.map +1 -1
  16. package/dist/commands/cdp.d.ts.map +1 -1
  17. package/dist/commands/cdp.js +1 -20
  18. package/dist/commands/cdp.js.map +1 -1
  19. package/dist/commands/cleanup.d.ts.map +1 -1
  20. package/dist/commands/cleanup.js +17 -15
  21. package/dist/commands/cleanup.js.map +1 -1
  22. package/dist/commands/console.d.ts.map +1 -1
  23. package/dist/commands/console.js +0 -5
  24. package/dist/commands/console.js.map +1 -1
  25. package/dist/commands/details.d.ts.map +1 -1
  26. package/dist/commands/details.js +0 -5
  27. package/dist/commands/details.js.map +1 -1
  28. package/dist/commands/dom/a11y.d.ts +18 -0
  29. package/dist/commands/dom/a11y.d.ts.map +1 -0
  30. package/dist/commands/dom/a11y.js +134 -0
  31. package/dist/commands/dom/a11y.js.map +1 -0
  32. package/dist/commands/dom/evalHelpers.d.ts.map +1 -1
  33. package/dist/commands/dom/evalHelpers.js +1 -6
  34. package/dist/commands/dom/evalHelpers.js.map +1 -1
  35. package/dist/commands/dom/formFillHelpers.d.ts.map +1 -1
  36. package/dist/commands/dom/formFillHelpers.js +0 -9
  37. package/dist/commands/dom/formFillHelpers.js.map +1 -1
  38. package/dist/commands/dom/formInteraction.d.ts.map +1 -1
  39. package/dist/commands/dom/formInteraction.js +0 -5
  40. package/dist/commands/dom/formInteraction.js.map +1 -1
  41. package/dist/commands/dom/formSubmitHelpers.d.ts.map +1 -1
  42. package/dist/commands/dom/formSubmitHelpers.js +0 -13
  43. package/dist/commands/dom/formSubmitHelpers.js.map +1 -1
  44. package/dist/commands/dom/helpers.d.ts.map +1 -1
  45. package/dist/commands/dom/helpers.js +0 -22
  46. package/dist/commands/dom/helpers.js.map +1 -1
  47. package/dist/commands/dom/index.d.ts.map +1 -1
  48. package/dist/commands/dom/index.js +41 -26
  49. package/dist/commands/dom/index.js.map +1 -1
  50. package/dist/commands/dom/reactEventHelpers.d.ts +3 -3
  51. package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -1
  52. package/dist/commands/dom/reactEventHelpers.js +0 -28
  53. package/dist/commands/dom/reactEventHelpers.js.map +1 -1
  54. package/dist/commands/network.d.ts.map +1 -1
  55. package/dist/commands/network.js +159 -10
  56. package/dist/commands/network.js.map +1 -1
  57. package/dist/commands/peek.d.ts.map +1 -1
  58. package/dist/commands/peek.js +17 -12
  59. package/dist/commands/peek.js.map +1 -1
  60. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  61. package/dist/commands/shared/CommandRunner.js +0 -8
  62. package/dist/commands/shared/CommandRunner.js.map +1 -1
  63. package/dist/commands/shared/__tests__/validation.unit.test.d.ts +7 -0
  64. package/dist/commands/shared/__tests__/validation.unit.test.d.ts.map +1 -0
  65. package/dist/commands/shared/__tests__/validation.unit.test.js +141 -0
  66. package/dist/commands/shared/__tests__/validation.unit.test.js.map +1 -0
  67. package/dist/commands/shared/startHelpers.d.ts.map +1 -1
  68. package/dist/commands/shared/startHelpers.js +0 -10
  69. package/dist/commands/shared/startHelpers.js.map +1 -1
  70. package/dist/commands/shared/validation.d.ts +17 -0
  71. package/dist/commands/shared/validation.d.ts.map +1 -1
  72. package/dist/commands/shared/validation.js +105 -5
  73. package/dist/commands/shared/validation.js.map +1 -1
  74. package/dist/commands/start.d.ts.map +1 -1
  75. package/dist/commands/start.js +0 -6
  76. package/dist/commands/start.js.map +1 -1
  77. package/dist/commands/status.d.ts.map +1 -1
  78. package/dist/commands/status.js +0 -2
  79. package/dist/commands/status.js.map +1 -1
  80. package/dist/commands/stop.d.ts.map +1 -1
  81. package/dist/commands/stop.js +11 -13
  82. package/dist/commands/stop.js.map +1 -1
  83. package/dist/commands/tail.d.ts.map +1 -1
  84. package/dist/commands/tail.js +0 -7
  85. package/dist/commands/tail.js.map +1 -1
  86. package/dist/commands/types.d.ts +3 -0
  87. package/dist/commands/types.d.ts.map +1 -1
  88. package/dist/commands.d.ts.map +1 -1
  89. package/dist/commands.js +0 -5
  90. package/dist/commands.js.map +1 -1
  91. package/dist/connection/cdp.d.ts.map +1 -1
  92. package/dist/connection/cdp.js +0 -3
  93. package/dist/connection/cdp.js.map +1 -1
  94. package/dist/connection/diagnostics.d.ts.map +1 -1
  95. package/dist/connection/diagnostics.js +7 -4
  96. package/dist/connection/diagnostics.js.map +1 -1
  97. package/dist/connection/pageReadiness.d.ts.map +1 -1
  98. package/dist/connection/pageReadiness.js +0 -1
  99. package/dist/connection/pageReadiness.js.map +1 -1
  100. package/dist/constants.d.ts +6 -0
  101. package/dist/constants.d.ts.map +1 -1
  102. package/dist/constants.js +6 -0
  103. package/dist/constants.js.map +1 -1
  104. package/dist/daemon/__tests__/commandRegistry.contract.test.js +259 -0
  105. package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +1 -1
  106. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +19 -0
  107. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +1 -0
  108. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +212 -0
  109. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +1 -0
  110. package/dist/daemon/handlers/BaseHandler.d.ts +75 -0
  111. package/dist/daemon/handlers/BaseHandler.d.ts.map +1 -0
  112. package/dist/daemon/handlers/BaseHandler.js +103 -0
  113. package/dist/daemon/handlers/BaseHandler.js.map +1 -0
  114. package/dist/daemon/handlers/CommandHandlers.d.ts +3 -4
  115. package/dist/daemon/handlers/CommandHandlers.d.ts.map +1 -1
  116. package/dist/daemon/handlers/CommandHandlers.js +14 -52
  117. package/dist/daemon/handlers/CommandHandlers.js.map +1 -1
  118. package/dist/daemon/handlers/QueryHandlers.d.ts +8 -6
  119. package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -1
  120. package/dist/daemon/handlers/QueryHandlers.js +42 -94
  121. package/dist/daemon/handlers/QueryHandlers.js.map +1 -1
  122. package/dist/daemon/handlers/SessionHandlers.d.ts.map +1 -1
  123. package/dist/daemon/handlers/SessionHandlers.js +0 -15
  124. package/dist/daemon/handlers/SessionHandlers.js.map +1 -1
  125. package/dist/daemon/handlers/requestHandlers.d.ts +5 -1
  126. package/dist/daemon/handlers/requestHandlers.d.ts.map +1 -1
  127. package/dist/daemon/handlers/requestHandlers.js +7 -2
  128. package/dist/daemon/handlers/requestHandlers.js.map +1 -1
  129. package/dist/daemon/handlers/responseHandler.d.ts.map +1 -1
  130. package/dist/daemon/handlers/responseHandler.js +19 -8
  131. package/dist/daemon/handlers/responseHandler.js.map +1 -1
  132. package/dist/daemon/ipcServer.d.ts.map +1 -1
  133. package/dist/daemon/ipcServer.js +4 -11
  134. package/dist/daemon/ipcServer.js.map +1 -1
  135. package/dist/daemon/launcher.d.ts.map +1 -1
  136. package/dist/daemon/launcher.js +2 -19
  137. package/dist/daemon/launcher.js.map +1 -1
  138. package/dist/daemon/lifecycle/cdpSetup.d.ts.map +1 -1
  139. package/dist/daemon/lifecycle/cdpSetup.js +0 -4
  140. package/dist/daemon/lifecycle/cdpSetup.js.map +1 -1
  141. package/dist/daemon/lifecycle/chromeConnection.js +0 -1
  142. package/dist/daemon/lifecycle/chromeConnection.js.map +1 -1
  143. package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -1
  144. package/dist/daemon/lifecycle/signalHandlers.js +0 -3
  145. package/dist/daemon/lifecycle/signalHandlers.js.map +1 -1
  146. package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -1
  147. package/dist/daemon/lifecycle/workerCleanup.js +1 -8
  148. package/dist/daemon/lifecycle/workerCleanup.js.map +1 -1
  149. package/dist/daemon/lifecycle/workerIpc.d.ts.map +1 -1
  150. package/dist/daemon/lifecycle/workerIpc.js +0 -1
  151. package/dist/daemon/lifecycle/workerIpc.js.map +1 -1
  152. package/dist/daemon/server/JsonlParser.d.ts.map +1 -1
  153. package/dist/daemon/server/JsonlParser.js +0 -2
  154. package/dist/daemon/server/JsonlParser.js.map +1 -1
  155. package/dist/daemon/services/SessionService.js +1 -1
  156. package/dist/daemon/services/SessionService.js.map +1 -1
  157. package/dist/daemon/startSession.d.ts.map +1 -1
  158. package/dist/daemon/startSession.js +0 -15
  159. package/dist/daemon/startSession.js.map +1 -1
  160. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
  161. package/dist/daemon/worker/commandRegistry.js +34 -1
  162. package/dist/daemon/worker/commandRegistry.js.map +1 -1
  163. package/dist/daemon/worker/plugins.d.ts.map +1 -1
  164. package/dist/daemon/worker/plugins.js +0 -3
  165. package/dist/daemon/worker/plugins.js.map +1 -1
  166. package/dist/daemon/worker.js +0 -9
  167. package/dist/daemon/worker.js.map +1 -1
  168. package/dist/daemon.js +0 -2
  169. package/dist/daemon.js.map +1 -1
  170. package/dist/index.js +0 -14
  171. package/dist/index.js.map +1 -1
  172. package/dist/ipc/__tests__/client.contract.test.js +251 -19
  173. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  174. package/dist/ipc/__tests__/jsonl.unit.test.js +19 -1
  175. package/dist/ipc/__tests__/jsonl.unit.test.js.map +1 -1
  176. package/dist/ipc/client.d.ts +47 -1
  177. package/dist/ipc/client.d.ts.map +1 -1
  178. package/dist/ipc/client.js +51 -0
  179. package/dist/ipc/client.js.map +1 -1
  180. package/dist/ipc/index.d.ts.map +1 -1
  181. package/dist/ipc/index.js +0 -6
  182. package/dist/ipc/index.js.map +1 -1
  183. package/dist/ipc/protocol/commands.d.ts +44 -0
  184. package/dist/ipc/protocol/commands.d.ts.map +1 -1
  185. package/dist/ipc/protocol/commands.js +8 -0
  186. package/dist/ipc/protocol/commands.js.map +1 -1
  187. package/dist/ipc/session/queries.d.ts +26 -2
  188. package/dist/ipc/session/queries.d.ts.map +1 -1
  189. package/dist/ipc/transport/index.d.ts.map +1 -1
  190. package/dist/ipc/transport/index.js +0 -1
  191. package/dist/ipc/transport/index.js.map +1 -1
  192. package/dist/ipc/transport/jsonl.d.ts +16 -0
  193. package/dist/ipc/transport/jsonl.d.ts.map +1 -1
  194. package/dist/ipc/transport/jsonl.js +24 -0
  195. package/dist/ipc/transport/jsonl.js.map +1 -1
  196. package/dist/session/chrome.js +2 -2
  197. package/dist/session/chrome.js.map +1 -1
  198. package/dist/session/cleanup.d.ts +21 -0
  199. package/dist/session/cleanup.d.ts.map +1 -1
  200. package/dist/session/cleanup.js +92 -12
  201. package/dist/session/cleanup.js.map +1 -1
  202. package/dist/session/lock.js +1 -1
  203. package/dist/session/lock.js.map +1 -1
  204. package/dist/telemetry/__tests__/a11y.unit.test.d.ts +10 -0
  205. package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +1 -0
  206. package/dist/telemetry/__tests__/a11y.unit.test.js +265 -0
  207. package/dist/telemetry/__tests__/a11y.unit.test.js.map +1 -0
  208. package/dist/telemetry/__tests__/filters.unit.test.js +119 -1
  209. package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -1
  210. package/dist/telemetry/__tests__/network.contract.test.js +114 -0
  211. package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
  212. package/dist/telemetry/a11y.d.ts +78 -0
  213. package/dist/telemetry/a11y.d.ts.map +1 -0
  214. package/dist/telemetry/a11y.js +280 -0
  215. package/dist/telemetry/a11y.js.map +1 -0
  216. package/dist/telemetry/dom.d.ts +1 -1
  217. package/dist/telemetry/dom.d.ts.map +1 -1
  218. package/dist/telemetry/dom.js +36 -5
  219. package/dist/telemetry/dom.js.map +1 -1
  220. package/dist/telemetry/filters.d.ts +17 -0
  221. package/dist/telemetry/filters.d.ts.map +1 -1
  222. package/dist/telemetry/filters.js +25 -0
  223. package/dist/telemetry/filters.js.map +1 -1
  224. package/dist/telemetry/har/__tests__/builder.unit.test.d.ts +8 -0
  225. package/dist/telemetry/har/__tests__/builder.unit.test.d.ts.map +1 -0
  226. package/dist/telemetry/har/__tests__/builder.unit.test.js +694 -0
  227. package/dist/telemetry/har/__tests__/builder.unit.test.js.map +1 -0
  228. package/dist/telemetry/har/builder.d.ts +43 -0
  229. package/dist/telemetry/har/builder.d.ts.map +1 -0
  230. package/dist/telemetry/har/builder.js +440 -0
  231. package/dist/telemetry/har/builder.js.map +1 -0
  232. package/dist/telemetry/har/types.d.ts +290 -0
  233. package/dist/telemetry/har/types.d.ts.map +1 -0
  234. package/dist/telemetry/har/types.js +7 -0
  235. package/dist/telemetry/har/types.js.map +1 -0
  236. package/dist/telemetry/network.d.ts.map +1 -1
  237. package/dist/telemetry/network.js +37 -4
  238. package/dist/telemetry/network.js.map +1 -1
  239. package/dist/types.d.ts +108 -0
  240. package/dist/types.d.ts.map +1 -1
  241. package/dist/ui/OutputBuilder.d.ts.map +1 -1
  242. package/dist/ui/OutputBuilder.js +0 -8
  243. package/dist/ui/OutputBuilder.js.map +1 -1
  244. package/dist/ui/errors/CommandError.d.ts.map +1 -1
  245. package/dist/ui/errors/CommandError.js +0 -1
  246. package/dist/ui/errors/CommandError.js.map +1 -1
  247. package/dist/ui/errors/index.d.ts.map +1 -1
  248. package/dist/ui/errors/index.js +0 -2
  249. package/dist/ui/errors/index.js.map +1 -1
  250. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +2 -0
  251. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +1 -0
  252. package/dist/ui/formatters/__tests__/semantic.unit.test.js +111 -0
  253. package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +1 -0
  254. package/dist/ui/formatters/a11y.d.ts +30 -0
  255. package/dist/ui/formatters/a11y.d.ts.map +1 -0
  256. package/dist/ui/formatters/a11y.js +178 -0
  257. package/dist/ui/formatters/a11y.js.map +1 -0
  258. package/dist/ui/formatters/details.d.ts.map +1 -1
  259. package/dist/ui/formatters/details.js +1 -0
  260. package/dist/ui/formatters/details.js.map +1 -1
  261. package/dist/ui/formatters/dom.d.ts.map +1 -1
  262. package/dist/ui/formatters/dom.js +0 -3
  263. package/dist/ui/formatters/dom.js.map +1 -1
  264. package/dist/ui/formatters/index.d.ts +1 -0
  265. package/dist/ui/formatters/index.d.ts.map +1 -1
  266. package/dist/ui/formatters/index.js +1 -0
  267. package/dist/ui/formatters/index.js.map +1 -1
  268. package/dist/ui/formatters/networkHeaders.d.ts +14 -0
  269. package/dist/ui/formatters/networkHeaders.d.ts.map +1 -0
  270. package/dist/ui/formatters/networkHeaders.js +47 -0
  271. package/dist/ui/formatters/networkHeaders.js.map +1 -0
  272. package/dist/ui/formatters/preview.d.ts +2 -0
  273. package/dist/ui/formatters/preview.d.ts.map +1 -1
  274. package/dist/ui/formatters/preview.js +67 -23
  275. package/dist/ui/formatters/preview.js.map +1 -1
  276. package/dist/ui/formatters/semantic.d.ts +36 -0
  277. package/dist/ui/formatters/semantic.d.ts.map +1 -0
  278. package/dist/ui/formatters/semantic.js +98 -0
  279. package/dist/ui/formatters/semantic.js.map +1 -0
  280. package/dist/ui/formatters/status.d.ts.map +1 -1
  281. package/dist/ui/formatters/status.js +1 -12
  282. package/dist/ui/formatters/status.js.map +1 -1
  283. package/dist/ui/formatting.d.ts.map +1 -1
  284. package/dist/ui/formatting.js +0 -6
  285. package/dist/ui/formatting.js.map +1 -1
  286. package/dist/ui/logging/logger.d.ts +1 -1
  287. package/dist/ui/logging/logger.d.ts.map +1 -1
  288. package/dist/ui/logging/logger.js.map +1 -1
  289. package/dist/ui/messages/chrome.d.ts.map +1 -1
  290. package/dist/ui/messages/chrome.js +0 -6
  291. package/dist/ui/messages/chrome.js.map +1 -1
  292. package/dist/ui/messages/commands.d.ts +7 -0
  293. package/dist/ui/messages/commands.d.ts.map +1 -1
  294. package/dist/ui/messages/commands.js +9 -12
  295. package/dist/ui/messages/commands.js.map +1 -1
  296. package/dist/ui/messages/debug.d.ts.map +1 -1
  297. package/dist/ui/messages/debug.js +0 -6
  298. package/dist/ui/messages/debug.js.map +1 -1
  299. package/dist/ui/messages/internal.d.ts.map +1 -1
  300. package/dist/ui/messages/internal.js +0 -3
  301. package/dist/ui/messages/internal.js.map +1 -1
  302. package/dist/ui/messages/preview.d.ts.map +1 -1
  303. package/dist/ui/messages/preview.js +0 -12
  304. package/dist/ui/messages/preview.js.map +1 -1
  305. package/dist/ui/messages/session.d.ts.map +1 -1
  306. package/dist/ui/messages/session.js +0 -3
  307. package/dist/ui/messages/session.js.map +1 -1
  308. package/dist/utils/__tests__/errors.unit.test.d.ts +12 -0
  309. package/dist/utils/__tests__/errors.unit.test.d.ts.map +1 -0
  310. package/dist/utils/__tests__/errors.unit.test.js +255 -0
  311. package/dist/utils/__tests__/errors.unit.test.js.map +1 -0
  312. package/dist/utils/__tests__/http.unit.test.d.ts +12 -0
  313. package/dist/utils/__tests__/http.unit.test.d.ts.map +1 -0
  314. package/dist/utils/__tests__/http.unit.test.js +218 -0
  315. package/dist/utils/__tests__/http.unit.test.js.map +1 -0
  316. package/dist/utils/__tests__/process.unit.test.d.ts +14 -0
  317. package/dist/utils/__tests__/process.unit.test.d.ts.map +1 -0
  318. package/dist/utils/__tests__/process.unit.test.js +124 -0
  319. package/dist/utils/__tests__/process.unit.test.js.map +1 -0
  320. package/dist/utils/__tests__/session.contract.test.js +1 -1
  321. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  322. package/dist/utils/atomicFile.d.ts.map +1 -1
  323. package/dist/utils/atomicFile.js +9 -6
  324. package/dist/utils/atomicFile.js.map +1 -1
  325. package/dist/utils/exitCodes.d.ts.map +1 -1
  326. package/dist/utils/exitCodes.js +0 -2
  327. package/dist/utils/exitCodes.js.map +1 -1
  328. package/dist/utils/validation.d.ts.map +1 -1
  329. package/dist/utils/validation.js +0 -3
  330. package/dist/utils/validation.js.map +1 -1
  331. package/dist/utils/version.d.ts.map +1 -1
  332. package/dist/utils/version.js +0 -1
  333. package/dist/utils/version.js.map +1 -1
  334. package/package.json +22 -1
@@ -29,12 +29,10 @@ import { filterDefined } from '../../utils/objects.js';
29
29
  async function withCDPConnection(fn) {
30
30
  const { CDPConnection } = await import('../../connection/cdp.js');
31
31
  const { validateActiveSession, getValidatedSessionMetadata, verifyTargetExists } = await import('../../commands/dom/evalHelpers.js');
32
- // Validate session
33
32
  validateActiveSession();
34
33
  const metadata = getValidatedSessionMetadata();
35
34
  const port = 9222; // Default port
36
35
  await verifyTargetExists(metadata, port);
37
- // Connect to CDP
38
36
  const cdp = new CDPConnection();
39
37
  if (!metadata.webSocketDebuggerUrl) {
40
38
  throw new CommandError('Missing webSocketDebuggerUrl in session metadata', { note: 'Session metadata may be corrupted or from an older version' }, EXIT_CODES.SESSION_FILE_ERROR);
@@ -63,7 +61,6 @@ export function registerFormInteractionCommands(program) {
63
61
  if (!domCommand) {
64
62
  throw new CommandError('DOM command group not found', { note: 'This is an internal error - DOM commands may not be registered' }, EXIT_CODES.SOFTWARE_ERROR);
65
63
  }
66
- // bdg dom fill <selector> <value>
67
64
  domCommand
68
65
  .command('fill')
69
66
  .description('Fill a form field with a value (React-compatible)')
@@ -93,7 +90,6 @@ export function registerFormInteractionCommands(program) {
93
90
  });
94
91
  }, options, formatFillOutput);
95
92
  });
96
- // bdg dom click <selector>
97
93
  domCommand
98
94
  .command('click')
99
95
  .description('Click an element')
@@ -120,7 +116,6 @@ export function registerFormInteractionCommands(program) {
120
116
  });
121
117
  }, options, formatClickOutput);
122
118
  });
123
- // bdg dom submit <selector>
124
119
  domCommand
125
120
  .command('submit')
126
121
  .description('Submit a form by clicking submit button and waiting for completion')
@@ -1 +1 @@
1
- {"version":3,"file":"formInteraction.js","sourceRoot":"","sources":["../../../src/commands/dom/formInteraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formInteraction.js","sourceRoot":"","sources":["../../../src/commands/dom/formInteraction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"formSubmitHelpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/formSubmitHelpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA6DvB"}
1
+ {"version":3,"file":"formSubmitHelpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/formSubmitHelpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAKzD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA0DvB"}
@@ -33,7 +33,6 @@ import { clickElement } from './formFillHelpers.js';
33
33
  export async function submitForm(cdp, selector, options = {}) {
34
34
  const { index, waitNavigation = false, waitNetwork = 1000, timeout = 10000 } = options;
35
35
  const startTime = Date.now();
36
- // Step 1: Click the submit button
37
36
  const clickOptions = {};
38
37
  if (index !== undefined) {
39
38
  clickOptions.index = index;
@@ -47,7 +46,6 @@ export async function submitForm(cdp, selector, options = {}) {
47
46
  clicked: false,
48
47
  };
49
48
  }
50
- // If no waiting requested, return immediately
51
49
  if (waitNetwork === 0 && !waitNavigation) {
52
50
  return {
53
51
  success: true,
@@ -58,7 +56,6 @@ export async function submitForm(cdp, selector, options = {}) {
58
56
  waitTimeMs: Date.now() - startTime,
59
57
  };
60
58
  }
61
- // Step 2: Wait for network idle and/or navigation
62
59
  try {
63
60
  const waitResult = await waitForCompletion(cdp, {
64
61
  waitNavigation,
@@ -106,15 +103,12 @@ async function waitForCompletion(cdp, options) {
106
103
  let idleTimeout = null;
107
104
  let timeoutHandle = null;
108
105
  return new Promise((resolve, reject) => {
109
- // Store cleanup functions for proper cleanup
110
106
  const cleanupFunctions = [];
111
- // Set up timeout
112
107
  timeoutHandle = setTimeout(() => {
113
108
  cleanup();
114
109
  reject(new CDPTimeoutError('Wait for completion timed out', new Error(`Timeout after ${timeout}ms`)));
115
110
  }, timeout);
116
111
  const checkCompletion = () => {
117
- // Check if all conditions are met
118
112
  const networkIdle = waitNetwork === 0 || activeRequests === 0;
119
113
  const navigationComplete = !waitNavigation || navigationOccurred;
120
114
  if (networkIdle && navigationComplete) {
@@ -122,7 +116,6 @@ async function waitForCompletion(cdp, options) {
122
116
  resolve({ networkRequests, navigationOccurred });
123
117
  }
124
118
  };
125
- // Monitor network requests
126
119
  const onRequestStarted = () => {
127
120
  networkRequests++;
128
121
  activeRequests++;
@@ -134,30 +127,25 @@ async function waitForCompletion(cdp, options) {
134
127
  const onRequestFinished = () => {
135
128
  activeRequests--;
136
129
  if (activeRequests === 0 && waitNetwork > 0) {
137
- // Start idle timer
138
130
  idleTimeout = setTimeout(() => {
139
131
  checkCompletion();
140
132
  }, waitNetwork);
141
133
  }
142
134
  };
143
- // Monitor navigation
144
135
  const onNavigated = () => {
145
136
  navigationOccurred = true;
146
137
  checkCompletion();
147
138
  };
148
- // Register event listeners and store cleanup functions
149
139
  cleanupFunctions.push(cdp.on('Network.requestWillBeSent', onRequestStarted));
150
140
  cleanupFunctions.push(cdp.on('Network.loadingFinished', onRequestFinished));
151
141
  cleanupFunctions.push(cdp.on('Network.loadingFailed', onRequestFinished));
152
142
  if (waitNavigation) {
153
143
  cleanupFunctions.push(cdp.on('Page.frameNavigated', onNavigated));
154
144
  }
155
- // Enable network monitoring if not already enabled
156
145
  cdp.send('Network.enable').catch((error) => {
157
146
  cleanup();
158
147
  reject(new CDPConnectionError('Failed to enable network monitoring', error));
159
148
  });
160
- // Start initial check (in case no network requests happen)
161
149
  if (waitNetwork === 0 || activeRequests === 0) {
162
150
  idleTimeout = setTimeout(() => {
163
151
  checkCompletion();
@@ -168,7 +156,6 @@ async function waitForCompletion(cdp, options) {
168
156
  clearTimeout(idleTimeout);
169
157
  if (timeoutHandle)
170
158
  clearTimeout(timeoutHandle);
171
- // Call all cleanup functions
172
159
  cleanupFunctions.forEach((cleanup) => cleanup());
173
160
  }
174
161
  });
@@ -1 +1 @@
1
- {"version":3,"file":"formSubmitHelpers.js","sourceRoot":"","sources":["../../../src/commands/dom/formSubmitHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formSubmitHelpers.js","sourceRoot":"","sources":["../../../src/commands/dom/formSubmitHelpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AASxB,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;AAQjG;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA8FhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAkIlF;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAyD3B"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAQxB,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;AAQjG;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAoFhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAwHlF;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAuD3B"}
@@ -24,36 +24,29 @@ const CDP_CONCURRENCY_LIMIT = 10;
24
24
  * @throws CDPConnectionError if CDP operation fails
25
25
  */
26
26
  export async function queryDOMElements(selector) {
27
- // Enable DOM domain
28
27
  await callCDP('DOM.enable', {});
29
- // Get document root
30
28
  const docResponse = await callCDP('DOM.getDocument', {});
31
29
  const doc = docResponse.data?.result;
32
30
  if (!doc?.root?.nodeId) {
33
31
  throw new CDPConnectionError('Failed to get document root', new Error('No root node'));
34
32
  }
35
- // Query selector
36
33
  const queryResponse = await callCDP('DOM.querySelectorAll', {
37
34
  nodeId: doc.root.nodeId,
38
35
  selector,
39
36
  });
40
37
  const queryResult = queryResponse.data?.result;
41
38
  const nodeIds = queryResult?.nodeIds ?? [];
42
- // Log progress for large queries
43
39
  if (nodeIds.length > 20) {
44
40
  log.debug(`Querying ${nodeIds.length} elements with selector: ${selector}`);
45
41
  }
46
- // Get info for each node with concurrency control
47
42
  const limiter = new ConcurrencyLimiter(CDP_CONCURRENCY_LIMIT);
48
43
  const nodes = await Promise.all(nodeIds.map((nodeId, index) => limiter.run(async () => {
49
- // Describe node
50
44
  const descResponse = await callCDP('DOM.describeNode', { nodeId });
51
45
  const descResult = descResponse.data?.result;
52
46
  const nodeDesc = descResult?.node;
53
47
  if (!nodeDesc) {
54
48
  return { index, nodeId };
55
49
  }
56
- // Parse attributes
57
50
  const attributes = {};
58
51
  if (nodeDesc.attributes) {
59
52
  for (let i = 0; i < nodeDesc.attributes.length; i += 2) {
@@ -64,14 +57,11 @@ export async function queryDOMElements(selector) {
64
57
  }
65
58
  }
66
59
  }
67
- // Extract classes and create preview
68
60
  const classes = attributes['class']?.split(/\s+/).filter((c) => c.length > 0);
69
61
  const tag = nodeDesc.nodeName.toLowerCase();
70
- // Get outer HTML for preview
71
62
  const htmlResponse = await callCDP('DOM.getOuterHTML', { nodeId });
72
63
  const htmlResult = htmlResponse.data?.result;
73
64
  const outerHTML = htmlResult?.outerHTML ?? '';
74
- // Create preview text
75
65
  const textContent = outerHTML
76
66
  .replace(/<[^>]*>/g, '')
77
67
  .replace(/\s+/g, ' ')
@@ -106,13 +96,11 @@ export async function getDOMElements(options) {
106
96
  nodeIds = [options.nodeId];
107
97
  }
108
98
  else if (options.selector) {
109
- // Get document root
110
99
  const docResponse = await callCDP('DOM.getDocument', {});
111
100
  const doc = docResponse.data?.result;
112
101
  if (!doc?.root?.nodeId) {
113
102
  throw new CDPConnectionError('Failed to get document root', new Error('No root node'));
114
103
  }
115
- // Query selector
116
104
  const queryResponse = await callCDP('DOM.querySelectorAll', {
117
105
  nodeId: doc.root.nodeId,
118
106
  selector: options.selector,
@@ -122,7 +110,6 @@ export async function getDOMElements(options) {
122
110
  if (nodeIds.length === 0) {
123
111
  throw new CommandError(`No elements found matching "${options.selector}"`, { suggestion: 'Verify the CSS selector is correct' }, EXIT_CODES.RESOURCE_NOT_FOUND);
124
112
  }
125
- // Apply filtering
126
113
  if (options.nth !== undefined) {
127
114
  if (options.nth < 1 || options.nth > nodeIds.length) {
128
115
  throw new CommandError(`--nth ${options.nth} out of range (found ${nodeIds.length} elements)`, { suggestion: `Use a value between 1 and ${nodeIds.length}` }, EXIT_CODES.INVALID_ARGUMENTS);
@@ -134,7 +121,6 @@ export async function getDOMElements(options) {
134
121
  nodeIds = [nthNode];
135
122
  }
136
123
  else if (!options.all) {
137
- // Default: return first match only
138
124
  const firstNode = nodeIds[0];
139
125
  if (firstNode === undefined) {
140
126
  throw new CommandError('No elements found', {}, EXIT_CODES.RESOURCE_NOT_FOUND);
@@ -145,21 +131,17 @@ export async function getDOMElements(options) {
145
131
  else {
146
132
  throw new CommandError('Either selector or nodeId must be provided', {}, EXIT_CODES.INVALID_ARGUMENTS);
147
133
  }
148
- // Log progress for large fetches
149
134
  if (nodeIds.length > 20) {
150
135
  log.debug(`Fetching details for ${nodeIds.length} DOM elements`);
151
136
  }
152
- // Fetch node details with concurrency control
153
137
  const limiter = new ConcurrencyLimiter(CDP_CONCURRENCY_LIMIT);
154
138
  const nodes = await Promise.all(nodeIds.map((nodeId) => limiter.run(async () => {
155
- // Describe node
156
139
  const descResponse = await callCDP('DOM.describeNode', { nodeId });
157
140
  const descResult = descResponse.data?.result;
158
141
  const nodeDesc = descResult?.node;
159
142
  if (!nodeDesc) {
160
143
  return { nodeId };
161
144
  }
162
- // Parse attributes
163
145
  const attributes = {};
164
146
  if (nodeDesc.attributes) {
165
147
  for (let i = 0; i < nodeDesc.attributes.length; i += 2) {
@@ -170,10 +152,8 @@ export async function getDOMElements(options) {
170
152
  }
171
153
  }
172
154
  }
173
- // Extract classes
174
155
  const classes = attributes['class']?.split(/\s+/).filter((c) => c.length > 0);
175
156
  const tag = nodeDesc.nodeName.toLowerCase();
176
- // Get outer HTML
177
157
  const htmlResponse = await callCDP('DOM.getOuterHTML', { nodeId });
178
158
  const htmlResult = htmlResponse.data?.result;
179
159
  const outerHTML = htmlResult?.outerHTML;
@@ -202,12 +182,10 @@ export async function capturePageScreenshot(outputPath, options = {}) {
202
182
  const format = options.format ?? 'png';
203
183
  const quality = format === 'jpeg' ? (options.quality ?? 90) : undefined;
204
184
  const fullPage = options.fullPage ?? true;
205
- // Get viewport dimensions
206
185
  const metricsResponse = await callCDP('Page.getLayoutMetrics', {});
207
186
  const metricsResult = metricsResponse.data?.result;
208
187
  const contentSize = metricsResult?.contentSize ?? { width: 0, height: 0 };
209
188
  const viewport = metricsResult?.visualViewport ?? { clientWidth: 0, clientHeight: 0 };
210
- // Capture screenshot
211
189
  const screenshotResponse = await callCDP('Page.captureScreenshot', {
212
190
  format,
213
191
  ...(quality !== undefined && { quality }),
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/dom/helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAQ1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;AAKhC;;;GAGG;AACH,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IACrD,oBAAoB;IACpB,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAEhC,oBAAoB;IACpB,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IACzD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,MAAsD,CAAC;IACrF,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,EAAE,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,iBAAiB;IACjB,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,sBAAsB,EAAE;QAC1D,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;QACvB,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,MAE3B,CAAC;IACd,MAAM,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;IAE3C,iCAAiC;IACjC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACxB,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,CAAC,MAAM,4BAA4B,QAAQ,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,kDAAkD;IAClD,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;QACrB,gBAAgB;QAChB,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,MAEzB,CAAC;QACd,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,CAAC;QAElC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3B,CAAC;QAED,mBAAmB;QACnB,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzC,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7C,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9E,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5C,6BAA6B;QAC7B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,MAEzB,CAAC;QACd,MAAM,SAAS,GAAG,UAAU,EAAE,SAAS,IAAI,EAAE,CAAC;QAE9C,sBAAsB;QACtB,MAAM,WAAW,GAAG,SAAS;aAC1B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;aACvB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,IAAI,EAAE,CAAC;QACV,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAElF,MAAM,IAAI,GAMN,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAEtB,IAAI,GAAG;YAAE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACxB,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACpC,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEpC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CACH,CACF,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAsB;IACzD,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAEhC,IAAI,OAAO,GAAa,EAAE,CAAC;IAE3B,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAC5B,oBAAoB;QACpB,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,MAAsD,CAAC;QACrF,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,EAAE,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QACzF,CAAC;QAED,iBAAiB;QACjB,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,sBAAsB,EAAE;YAC1D,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM;YACvB,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,MAE3B,CAAC;QACd,OAAO,GAAG,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC;QAErC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,YAAY,CACpB,+BAA+B,OAAO,CAAC,QAAQ,GAAG,EAClD,EAAE,UAAU,EAAE,oCAAoC,EAAE,EACpD,UAAU,CAAC,kBAAkB,CAC9B,CAAC;QACJ,CAAC;QAED,kBAAkB;QAClB,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,GAAG,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpD,MAAM,IAAI,YAAY,CACpB,SAAS,OAAO,CAAC,GAAG,wBAAwB,OAAO,CAAC,MAAM,YAAY,EACtE,EAAE,UAAU,EAAE,6BAA6B,OAAO,CAAC,MAAM,EAAE,EAAE,EAC7D,UAAU,CAAC,iBAAiB,CAC7B,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,IAAI,YAAY,CACpB,oBAAoB,OAAO,CAAC,GAAG,YAAY,EAC3C,EAAE,EACF,UAAU,CAAC,kBAAkB,CAC9B,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACxB,mCAAmC;YACnC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE,EAAE,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;YACjF,CAAC;YACD,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,YAAY,CACpB,4CAA4C,EAC5C,EAAE,EACF,UAAU,CAAC,iBAAiB,CAC7B,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACxB,GAAG,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,MAAM,eAAe,CAAC,CAAC;IACnE,CAAC;IAED,8CAA8C;IAC9C,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7B,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACrB,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;QACrB,gBAAgB;QAChB,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,MAEzB,CAAC;QACd,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,CAAC;QAElC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC;QAED,mBAAmB;QACnB,MAAM,UAAU,GAA2B,EAAE,CAAC;QAC9C,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvD,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzC,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7C,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9E,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAE5C,iBAAiB;QACjB,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,MAEzB,CAAC;QACd,MAAM,SAAS,GAAG,UAAU,EAAE,SAAS,CAAC;QAExC,MAAM,IAAI,GAMN,EAAE,MAAM,EAAE,CAAC;QAEf,IAAI,GAAG;YAAE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACxB,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QACrE,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACpC,IAAI,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE1C,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CACH,CACF,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAAkB,EAClB,UAA6B,EAAE;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC;IACvC,MAAM,OAAO,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;IAE1C,0BAA0B;IAC1B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,EAAE,MAE/B,CAAC;IAEd,MAAM,WAAW,GAAG,aAAa,EAAE,WAAW,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAC1E,MAAM,QAAQ,GAAG,aAAa,EAAE,cAAc,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAEtF,qBAAqB;IACrB,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,wBAAwB,EAAE;QACjE,MAAM;QACN,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;QACzC,qBAAqB,EAAE,QAAQ;KAChC,CAAC,CAAC;IAEH,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAErC,CAAC;IAEd,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,EAAE,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE5D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,gBAAgB,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAE9D,MAAM,MAAM,GAAqB;QAC/B,IAAI,EAAE,YAAY;QAClB,MAAM;QACN,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW;QAC1D,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY;QAC7D,IAAI,EAAE,MAAM,CAAC,MAAM;QACnB,QAAQ;KACT,CAAC;IAEF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,QAAQ,GAAG;YAChB,KAAK,EAAE,QAAQ,CAAC,WAAW;YAC3B,MAAM,EAAE,QAAQ,CAAC,YAAY;SAC9B,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/dom/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+KzC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiD1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2MzC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgD1D"}
@@ -1,6 +1,11 @@
1
+ import { registerA11yCommands } from '../../commands/dom/a11y.js';
1
2
  import { queryDOMElements, getDOMElements, capturePageScreenshot } from '../../commands/dom/helpers.js';
2
3
  import { runCommand } from '../../commands/shared/CommandRunner.js';
4
+ import { getA11yNodeBySelector } from '../../telemetry/a11y.js';
5
+ import { CommandError } from '../../ui/errors/index.js';
3
6
  import { formatDomQuery, formatDomGet, formatDomEval, formatDomScreenshot, } from '../../ui/formatters/dom.js';
7
+ import { semantic } from '../../ui/formatters/semantic.js';
8
+ import { EXIT_CODES } from '../../utils/exitCodes.js';
4
9
  import { filterDefined } from '../../utils/objects.js';
5
10
  import { parsePositiveIntOption } from '../../utils/validation.js';
6
11
  /**
@@ -21,23 +26,41 @@ async function handleDomQuery(selector, options) {
21
26
  /**
22
27
  * Handle bdg dom get command
23
28
  *
24
- * Retrieves full HTML and attributes for DOM elements. Accepts CSS selector or direct nodeId.
25
- * Uses CDP relay through worker's persistent connection.
29
+ * Retrieves semantic accessibility structure by default (70% token reduction).
30
+ * Use --raw flag for full HTML output.
26
31
  *
27
32
  * @param selector - CSS selector (e.g., ".error")
28
- * @param options - Command options including --all, --nth, and nodeId
33
+ * @param options - Command options including --all, --nth, nodeId, and raw
29
34
  */
30
35
  async function handleDomGet(selector, options) {
31
- await runCommand(async () => {
32
- const getOptions = filterDefined({
33
- selector,
34
- all: options.all,
35
- nth: options.nth,
36
- nodeId: options.nodeId,
36
+ if (options.raw) {
37
+ await runCommand(async () => {
38
+ const getOptions = filterDefined({
39
+ selector,
40
+ all: options.all,
41
+ nth: options.nth,
42
+ nodeId: options.nodeId,
43
+ });
44
+ const result = await getDOMElements(getOptions);
45
+ return { success: true, data: result };
46
+ }, options, formatDomGet);
47
+ }
48
+ else {
49
+ await runCommand(async () => {
50
+ const node = await getA11yNodeBySelector(selector);
51
+ if (!node) {
52
+ throw new CommandError(`Element not found or has no accessibility information: ${selector}`, { suggestion: 'Try: bdg dom query <selector> to verify element exists' }, EXIT_CODES.RESOURCE_NOT_FOUND);
53
+ }
54
+ return { success: true, data: node };
55
+ }, options, (node) => {
56
+ const fakeTree = {
57
+ root: node,
58
+ nodes: new Map([[node.nodeId, node]]),
59
+ count: 1,
60
+ };
61
+ return semantic(fakeTree);
37
62
  });
38
- const result = await getDOMElements(getOptions);
39
- return { success: true, data: result };
40
- }, options, formatDomGet);
63
+ }
41
64
  }
42
65
  /**
43
66
  * Handle bdg dom screenshot <path> command
@@ -72,23 +95,17 @@ async function handleDomScreenshot(path, options) {
72
95
  */
73
96
  async function handleDomEval(script, options) {
74
97
  await runCommand(async () => {
75
- // Lazy load CDP connection (only needed for eval command)
76
98
  const { CDPConnection } = await import('../../connection/cdp.js');
77
99
  const { validateActiveSession, getValidatedSessionMetadata, verifyTargetExists, executeScript, } = await import('../../commands/dom/evalHelpers.js');
78
- // Validate session is running
79
100
  validateActiveSession();
80
- // Get and validate session metadata
81
101
  const metadata = getValidatedSessionMetadata();
82
- // Verify target still exists
83
102
  const port = parsePositiveIntOption('port', options.port, {
84
103
  defaultValue: 9222,
85
104
  min: 1,
86
105
  max: 65535,
87
106
  });
88
107
  await verifyTargetExists(metadata, port);
89
- // Create temporary CDP connection and execute script
90
108
  const cdp = new CDPConnection();
91
- // getValidatedSessionMetadata ensures webSocketDebuggerUrl is defined
92
109
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
93
110
  await cdp.connect(metadata.webSocketDebuggerUrl);
94
111
  const result = await executeScript(cdp, script);
@@ -107,7 +124,7 @@ async function handleDomEval(script, options) {
107
124
  */
108
125
  export function registerDomCommands(program) {
109
126
  const dom = program.command('dom').description('DOM inspection and manipulation');
110
- // bdg dom query <selector>
127
+ registerA11yCommands(dom);
111
128
  dom
112
129
  .command('query')
113
130
  .description('Find elements by CSS selector')
@@ -116,7 +133,6 @@ export function registerDomCommands(program) {
116
133
  .action(async (selector, options) => {
117
134
  await handleDomQuery(selector, options);
118
135
  });
119
- // bdg dom eval <script>
120
136
  dom
121
137
  .command('eval')
122
138
  .description('Evaluate JavaScript expression in the page context')
@@ -126,19 +142,18 @@ export function registerDomCommands(program) {
126
142
  .action(async (script, options) => {
127
143
  await handleDomEval(script, options);
128
144
  });
129
- // bdg dom get <selector>
130
145
  dom
131
146
  .command('get')
132
- .description('Get full HTML and attributes for elements')
147
+ .description('Get semantic accessibility structure (default) or raw HTML (--raw)')
133
148
  .argument('<selector>', 'CSS selector (e.g., ".error", "#app", "button")')
134
- .option('--all', 'Target all matches')
135
- .option('--nth <n>', 'Target nth match', parseInt)
136
- .option('--node-id <id>', 'Use nodeId directly (advanced)', parseInt)
149
+ .option('--raw', 'Output raw HTML with all filtering options')
150
+ .option('--all', 'Get all matches (only with --raw)')
151
+ .option('--nth <n>', 'Get nth match (only with --raw)', parseInt)
152
+ .option('--node-id <id>', 'Use nodeId directly (only with --raw)', parseInt)
137
153
  .option('-j, --json', 'Output as JSON')
138
154
  .action(async (selector, options) => {
139
155
  await handleDomGet(selector, options);
140
156
  });
141
- // bdg dom screenshot <path>
142
157
  dom
143
158
  .command('screenshot')
144
159
  .description('Capture page screenshot')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dom/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/dom/index.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@
16
16
  * @remarks
17
17
  * Works with React, Vue, Angular, and vanilla JS applications.
18
18
  */
19
- export declare const REACT_FILL_SCRIPT = "\n(function(selector, value, options) {\n const el = document.querySelector(selector);\n \n if (!el) {\n return { \n success: false, \n error: 'Element not found',\n selector: selector\n };\n }\n \n // Check if element is fillable\n const tagName = el.tagName.toLowerCase();\n const inputType = el.type?.toLowerCase();\n \n const isFillable = (\n tagName === 'input' || \n tagName === 'textarea' || \n tagName === 'select' ||\n el.isContentEditable\n );\n \n if (!isFillable) {\n return {\n success: false,\n error: 'Element is not fillable',\n elementType: tagName,\n suggestion: 'Only input, textarea, select, and contenteditable elements can be filled'\n };\n }\n \n // Focus element first\n el.focus();\n \n // Handle different input types\n if (tagName === 'select') {\n // For select elements\n el.value = value;\n el.dispatchEvent(new Event('change', { bubbles: true }));\n } else if (inputType === 'checkbox' || inputType === 'radio') {\n // For checkbox/radio, value should be \"true\" or \"false\"\n const shouldCheck = value === 'true' || value === true;\n el.checked = shouldCheck;\n el.dispatchEvent(new Event('change', { bubbles: true }));\n } else if (inputType === 'file') {\n return {\n success: false,\n error: 'File inputs require CDP DOM.setFileInputFiles method',\n suggestion: 'Use: bdg cdp DOM.setFileInputFiles --params {\\\"files\\\":[\\\"path\\\"]}'\n };\n } else if (el.isContentEditable) {\n // For contenteditable elements\n el.textContent = value;\n el.dispatchEvent(new Event('input', { bubbles: true }));\n } else {\n // For text inputs, use native setter (React compatibility)\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n window.HTMLInputElement.prototype,\n 'value'\n )?.set;\n \n const nativeTextAreaValueSetter = Object.getOwnPropertyDescriptor(\n window.HTMLTextAreaElement.prototype,\n 'value'\n )?.set;\n \n const setter = tagName === 'textarea' \n ? nativeTextAreaValueSetter \n : nativeInputValueSetter;\n \n if (setter) {\n setter.call(el, value);\n } else {\n el.value = value;\n }\n \n // Dispatch events that React/Vue/Angular listen for\n el.dispatchEvent(new Event('input', { bubbles: true }));\n el.dispatchEvent(new Event('change', { bubbles: true }));\n }\n \n // Blur if requested (triggers validation in many forms)\n if (options.blur !== false) {\n el.blur();\n // Dispatch focusout event for React/framework validation handlers\n el.dispatchEvent(new FocusEvent('focusout', { bubbles: true }));\n }\n \n return {\n success: true,\n selector: selector,\n value: el.value || el.textContent,\n elementType: tagName,\n inputType: inputType || null,\n checked: el.checked || undefined\n };\n})\n";
19
+ export declare const REACT_FILL_SCRIPT = "\n(function(selector, value, options) {\n const el = document.querySelector(selector);\n \n if (!el) {\n return { \n success: false, \n error: 'Element not found',\n selector: selector\n };\n }\n \n const tagName = el.tagName.toLowerCase();\n const inputType = el.type?.toLowerCase();\n \n const isFillable = (\n tagName === 'input' || \n tagName === 'textarea' || \n tagName === 'select' ||\n el.isContentEditable\n );\n \n if (!isFillable) {\n return {\n success: false,\n error: 'Element is not fillable',\n elementType: tagName,\n suggestion: 'Only input, textarea, select, and contenteditable elements can be filled'\n };\n }\n \n el.focus();\n \n if (tagName === 'select') {\n el.value = value;\n el.dispatchEvent(new Event('change', { bubbles: true }));\n } else if (inputType === 'checkbox' || inputType === 'radio') {\n const shouldCheck = value === 'true' || value === true;\n el.checked = shouldCheck;\n el.dispatchEvent(new Event('change', { bubbles: true }));\n } else if (inputType === 'file') {\n return {\n success: false,\n error: 'File inputs require CDP DOM.setFileInputFiles method',\n suggestion: 'Use: bdg cdp DOM.setFileInputFiles --params {\\\"files\\\":[\\\"path\\\"]}'\n };\n } else if (el.isContentEditable) {\n el.textContent = value;\n el.dispatchEvent(new Event('input', { bubbles: true }));\n } else {\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n window.HTMLInputElement.prototype,\n 'value'\n )?.set;\n \n const nativeTextAreaValueSetter = Object.getOwnPropertyDescriptor(\n window.HTMLTextAreaElement.prototype,\n 'value'\n )?.set;\n \n const setter = tagName === 'textarea' \n ? nativeTextAreaValueSetter \n : nativeInputValueSetter;\n \n if (setter) {\n setter.call(el, value);\n } else {\n el.value = value;\n }\n \n el.dispatchEvent(new Event('input', { bubbles: true }));\n el.dispatchEvent(new Event('change', { bubbles: true }));\n }\n \n if (options.blur !== false) {\n el.blur();\n el.dispatchEvent(new FocusEvent('focusout', { bubbles: true }));\n }\n \n return {\n success: true,\n selector: selector,\n value: el.value || el.textContent,\n elementType: tagName,\n inputType: inputType || null,\n checked: el.checked || undefined\n };\n})\n";
20
20
  /**
21
21
  * JavaScript function to click an element.
22
22
  *
@@ -24,14 +24,14 @@ export declare const REACT_FILL_SCRIPT = "\n(function(selector, value, options)
24
24
  * Simple click implementation that works with buttons, links, and custom components.
25
25
  * When selector matches multiple elements, prioritizes visible ones.
26
26
  */
27
- export declare const CLICK_ELEMENT_SCRIPT = "\n(function(selector) {\n let el = document.querySelector(selector);\n \n // If not found, return error\n if (!el) {\n return {\n success: false,\n error: 'Element not found',\n selector: selector\n };\n }\n \n // Check if there are multiple matches and pick the visible one\n const allMatches = document.querySelectorAll(selector);\n if (allMatches.length > 1) {\n // Find first visible element using bounding rect and computed styles\n for (const candidate of allMatches) {\n const style = window.getComputedStyle(candidate);\n const rect = candidate.getBoundingClientRect();\n \n // Check if element is actually visible:\n // - Must have dimensions (non-zero width/height)\n // - Must not be display:none or visibility:hidden\n // - Opacity check (but allow semi-transparent elements)\n // - offsetParent check (but position:fixed elements have null offsetParent, so also check position)\n const hasSize = rect.width > 0 && rect.height > 0;\n const isDisplayed = style.display !== 'none' && style.visibility !== 'hidden';\n const isOpaque = parseFloat(style.opacity) > 0;\n const isPositioned = candidate.offsetParent !== null || style.position === 'fixed';\n \n // Don't filter out elements without text - icon buttons, inputs, etc. are valid\n const isVisible = hasSize && isDisplayed && isOpaque && isPositioned;\n \n if (isVisible) {\n el = candidate;\n break;\n }\n }\n }\n \n // Check if element is clickable (has click handler or is a button/link)\n const tagName = el.tagName.toLowerCase();\n const isClickable = (\n tagName === 'button' ||\n tagName === 'a' ||\n tagName === 'input' ||\n el.onclick !== null ||\n el.getAttribute('role') === 'button' ||\n window.getComputedStyle(el).cursor === 'pointer'\n );\n \n if (!isClickable) {\n console.warn('Warning: Element may not be clickable:', el);\n }\n \n // Scroll element into view first\n el.scrollIntoView({ behavior: 'auto', block: 'center' });\n \n // Click the element\n el.click();\n \n return {\n success: true,\n selector: selector,\n elementType: tagName,\n clickable: isClickable\n };\n})\n";
27
+ export declare const CLICK_ELEMENT_SCRIPT = "\n(function(selector) {\n let el = document.querySelector(selector);\n \n if (!el) {\n return {\n success: false,\n error: 'Element not found',\n selector: selector\n };\n }\n \n const allMatches = document.querySelectorAll(selector);\n if (allMatches.length > 1) {\n for (const candidate of allMatches) {\n const style = window.getComputedStyle(candidate);\n const rect = candidate.getBoundingClientRect();\n \n const hasSize = rect.width > 0 && rect.height > 0;\n const isDisplayed = style.display !== 'none' && style.visibility !== 'hidden';\n const isOpaque = parseFloat(style.opacity) > 0;\n const isPositioned = candidate.offsetParent !== null || style.position === 'fixed';\n \n const isVisible = hasSize && isDisplayed && isOpaque && isPositioned;\n \n if (isVisible) {\n el = candidate;\n break;\n }\n }\n }\n \n const tagName = el.tagName.toLowerCase();\n const isClickable = (\n tagName === 'button' ||\n tagName === 'a' ||\n tagName === 'input' ||\n el.onclick !== null ||\n el.getAttribute('role') === 'button' ||\n window.getComputedStyle(el).cursor === 'pointer'\n );\n \n if (!isClickable) {\n console.warn('Warning: Element may not be clickable:', el);\n }\n \n el.scrollIntoView({ behavior: 'auto', block: 'center' });\n \n el.click();\n \n return {\n success: true,\n selector: selector,\n elementType: tagName,\n clickable: isClickable\n };\n})\n";
28
28
  /**
29
29
  * JavaScript function to get multiple elements by selector.
30
30
  *
31
31
  * @remarks
32
32
  * Used when --index is specified to select from multiple matches.
33
33
  */
34
- export declare const GET_ELEMENT_BY_INDEX_SCRIPT = "\n(function(selector, index) {\n const elements = document.querySelectorAll(selector);\n \n if (elements.length === 0) {\n return {\n success: false,\n error: 'No elements found',\n selector: selector,\n matchCount: 0\n };\n }\n \n if (index < 1 || index > elements.length) {\n return {\n success: false,\n error: 'Index out of range',\n selector: selector,\n matchCount: elements.length,\n requestedIndex: index,\n suggestion: `Use --index between 1 and ${elements.length}`\n };\n }\n \n // Return element info (we'll use this to build a more specific selector)\n const el = elements[index - 1]; // Convert to 0-based\n \n // Build a truly unique selector by constructing a scoped DOM path\n function buildUniquePath(element: Element): string {\n // If element has an ID, that's unique enough\n if (element.id) {\n return `#${CSS.escape(element.id)}`;\n }\n \n // Build path from root using nth-of-type for each ancestor\n const path: string[] = [];\n let current: Element | null = element;\n \n while (current && current !== document.documentElement) {\n let selector = current.tagName.toLowerCase();\n \n // Use nth-of-type to ensure uniqueness within parent\n if (current.parentElement) {\n const siblings = Array.from(current.parentElement.children);\n const sameTagSiblings = siblings.filter(\n (sibling) => sibling.tagName === current!.tagName\n );\n \n if (sameTagSiblings.length > 1) {\n const index = sameTagSiblings.indexOf(current) + 1;\n selector += `:nth-of-type(${index})`;\n }\n }\n \n path.unshift(selector);\n current = current.parentElement;\n }\n \n // Prefix with html to anchor to document root\n return 'html > ' + path.join(' > ');\n }\n \n const uniqueSelector = buildUniquePath(el);\n \n return {\n success: true,\n selector: selector,\n matchCount: elements.length,\n selectedIndex: index,\n uniqueSelector: uniqueSelector\n };\n})\n";
34
+ export declare const GET_ELEMENT_BY_INDEX_SCRIPT = "\n(function(selector, index) {\n const elements = document.querySelectorAll(selector);\n \n if (elements.length === 0) {\n return {\n success: false,\n error: 'No elements found',\n selector: selector,\n matchCount: 0\n };\n }\n \n if (index < 1 || index > elements.length) {\n return {\n success: false,\n error: 'Index out of range',\n selector: selector,\n matchCount: elements.length,\n requestedIndex: index,\n suggestion: `Use --index between 1 and ${elements.length}`\n };\n }\n \n const el = elements[index - 1]; // Convert to 0-based\n \n function buildUniquePath(element: Element): string {\n if (element.id) {\n return `#${CSS.escape(element.id)}`;\n }\n \n const path: string[] = [];\n let current: Element | null = element;\n \n while (current && current !== document.documentElement) {\n let selector = current.tagName.toLowerCase();\n \n if (current.parentElement) {\n const siblings = Array.from(current.parentElement.children);\n const sameTagSiblings = siblings.filter(\n (sibling) => sibling.tagName === current!.tagName\n );\n \n if (sameTagSiblings.length > 1) {\n const index = sameTagSiblings.indexOf(current) + 1;\n selector += `:nth-of-type(${index})`;\n }\n }\n \n path.unshift(selector);\n current = current.parentElement;\n }\n \n return 'html > ' + path.join(' > ');\n }\n \n const uniqueSelector = buildUniquePath(el);\n \n return {\n success: true,\n selector: selector,\n matchCount: elements.length,\n selectedIndex: index,\n uniqueSelector: uniqueSelector\n };\n})\n";
35
35
  /**
36
36
  * Options for filling an element.
37
37
  */
@@ -1 +1 @@
1
- {"version":3,"file":"reactEventHelpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/reactEventHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,i3FAkG7B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,stEAqEhC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,kkEAwEvC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"reactEventHelpers.d.ts","sourceRoot":"","sources":["../../../src/commands/dom/reactEventHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,+4EAwF7B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,u/CAyDhC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,0sDAkEvC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gEAAgE;IAChE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}