browser-debugger-cli 0.3.0 → 0.5.1

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 (484) hide show
  1. package/README.md +137 -126
  2. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +8 -0
  3. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +1 -0
  4. package/dist/__tests__/smoke/error-handling.smoke.test.js +106 -0
  5. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -0
  6. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +8 -0
  7. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +1 -0
  8. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +109 -0
  9. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -0
  10. package/dist/__testutils__/commandRunner.d.ts +45 -0
  11. package/dist/__testutils__/commandRunner.d.ts.map +1 -0
  12. package/dist/__testutils__/commandRunner.js +108 -0
  13. package/dist/__testutils__/commandRunner.js.map +1 -0
  14. package/dist/__testutils__/daemonHelpers.d.ts +81 -0
  15. package/dist/__testutils__/daemonHelpers.d.ts.map +1 -0
  16. package/dist/__testutils__/daemonHelpers.js +206 -0
  17. package/dist/__testutils__/daemonHelpers.js.map +1 -0
  18. package/dist/__testutils__/index.d.ts +1 -0
  19. package/dist/__testutils__/index.d.ts.map +1 -1
  20. package/dist/__testutils__/index.js +1 -0
  21. package/dist/__testutils__/index.js.map +1 -1
  22. package/dist/__testutils__/testCleanup.d.ts +45 -0
  23. package/dist/__testutils__/testCleanup.d.ts.map +1 -0
  24. package/dist/__testutils__/testCleanup.js +87 -0
  25. package/dist/__testutils__/testCleanup.js.map +1 -0
  26. package/dist/__testutils__/testHome.d.ts +26 -0
  27. package/dist/__testutils__/testHome.d.ts.map +1 -0
  28. package/dist/__testutils__/testHome.js +57 -0
  29. package/dist/__testutils__/testHome.js.map +1 -0
  30. package/dist/__testutils__/testProcess.d.ts.map +1 -1
  31. package/dist/__testutils__/testProcess.js +11 -3
  32. package/dist/__testutils__/testProcess.js.map +1 -1
  33. package/dist/cli/commands/__tests__/start.unit.test.d.ts +2 -0
  34. package/dist/cli/commands/__tests__/start.unit.test.d.ts.map +1 -0
  35. package/dist/cli/commands/__tests__/start.unit.test.js +131 -0
  36. package/dist/cli/commands/__tests__/start.unit.test.js.map +1 -0
  37. package/dist/cli/commands/cleanup.d.ts +1 -0
  38. package/dist/cli/commands/cleanup.d.ts.map +1 -1
  39. package/dist/cli/commands/cleanup.js +80 -61
  40. package/dist/cli/commands/cleanup.js.map +1 -1
  41. package/dist/cli/commands/details.d.ts +2 -1
  42. package/dist/cli/commands/details.d.ts.map +1 -1
  43. package/dist/cli/commands/details.js +104 -52
  44. package/dist/cli/commands/details.js.map +1 -1
  45. package/dist/cli/commands/peek.d.ts +2 -1
  46. package/dist/cli/commands/peek.d.ts.map +1 -1
  47. package/dist/cli/commands/peek.js +22 -67
  48. package/dist/cli/commands/peek.js.map +1 -1
  49. package/dist/cli/commands/query.d.ts +9 -0
  50. package/dist/cli/commands/query.d.ts.map +1 -0
  51. package/dist/cli/commands/query.js +125 -0
  52. package/dist/cli/commands/query.js.map +1 -0
  53. package/dist/cli/commands/start.d.ts +74 -0
  54. package/dist/cli/commands/start.d.ts.map +1 -1
  55. package/dist/cli/commands/start.js +147 -38
  56. package/dist/cli/commands/start.js.map +1 -1
  57. package/dist/cli/commands/status.d.ts.map +1 -1
  58. package/dist/cli/commands/status.js +37 -49
  59. package/dist/cli/commands/status.js.map +1 -1
  60. package/dist/cli/commands/stop.d.ts +1 -0
  61. package/dist/cli/commands/stop.d.ts.map +1 -1
  62. package/dist/cli/commands/stop.js +106 -120
  63. package/dist/cli/commands/stop.js.map +1 -1
  64. package/dist/cli/formatters/detailsFormatter.d.ts +1 -1
  65. package/dist/cli/formatters/previewFormatter.d.ts +7 -7
  66. package/dist/cli/formatters/previewFormatter.d.ts.map +1 -1
  67. package/dist/cli/formatters/previewFormatter.js +5 -10
  68. package/dist/cli/formatters/previewFormatter.js.map +1 -1
  69. package/dist/cli/formatters/statusFormatter.d.ts +13 -10
  70. package/dist/cli/formatters/statusFormatter.d.ts.map +1 -1
  71. package/dist/cli/formatters/statusFormatter.js +26 -53
  72. package/dist/cli/formatters/statusFormatter.js.map +1 -1
  73. package/dist/cli/handlers/ChromeBootstrap.d.ts +24 -0
  74. package/dist/cli/handlers/ChromeBootstrap.d.ts.map +1 -0
  75. package/dist/cli/handlers/ChromeBootstrap.js +50 -0
  76. package/dist/cli/handlers/ChromeBootstrap.js.map +1 -0
  77. package/dist/cli/handlers/OutputBuilder.d.ts +2 -3
  78. package/dist/cli/handlers/OutputBuilder.d.ts.map +1 -1
  79. package/dist/cli/handlers/OutputBuilder.js +2 -4
  80. package/dist/cli/handlers/OutputBuilder.js.map +1 -1
  81. package/dist/cli/handlers/OutputWriter.d.ts +15 -0
  82. package/dist/cli/handlers/OutputWriter.d.ts.map +1 -0
  83. package/dist/cli/handlers/OutputWriter.js +34 -0
  84. package/dist/cli/handlers/OutputWriter.js.map +1 -0
  85. package/dist/cli/handlers/PreviewWriter.d.ts +52 -0
  86. package/dist/cli/handlers/PreviewWriter.d.ts.map +1 -0
  87. package/dist/cli/handlers/PreviewWriter.js +118 -0
  88. package/dist/cli/handlers/PreviewWriter.js.map +1 -0
  89. package/dist/cli/handlers/SessionLock.d.ts +16 -0
  90. package/dist/cli/handlers/SessionLock.d.ts.map +1 -0
  91. package/dist/cli/handlers/SessionLock.js +35 -0
  92. package/dist/cli/handlers/SessionLock.js.map +1 -0
  93. package/dist/cli/handlers/SessionLoop.d.ts +19 -0
  94. package/dist/cli/handlers/SessionLoop.d.ts.map +1 -0
  95. package/dist/cli/handlers/SessionLoop.js +47 -0
  96. package/dist/cli/handlers/SessionLoop.js.map +1 -0
  97. package/dist/cli/handlers/ShutdownController.d.ts +41 -0
  98. package/dist/cli/handlers/ShutdownController.d.ts.map +1 -0
  99. package/dist/cli/handlers/ShutdownController.js +94 -0
  100. package/dist/cli/handlers/ShutdownController.js.map +1 -0
  101. package/dist/cli/handlers/SignalHandler.d.ts +35 -0
  102. package/dist/cli/handlers/SignalHandler.d.ts.map +1 -0
  103. package/dist/cli/handlers/SignalHandler.js +81 -0
  104. package/dist/cli/handlers/SignalHandler.js.map +1 -0
  105. package/dist/cli/handlers/TargetSetup.d.ts +42 -0
  106. package/dist/cli/handlers/TargetSetup.d.ts.map +1 -0
  107. package/dist/cli/handlers/TargetSetup.js +87 -0
  108. package/dist/cli/handlers/TargetSetup.js.map +1 -0
  109. package/dist/cli/handlers/sessionController.d.ts +41 -0
  110. package/dist/cli/handlers/sessionController.d.ts.map +1 -1
  111. package/dist/cli/handlers/sessionController.js +266 -5
  112. package/dist/cli/handlers/sessionController.js.map +1 -1
  113. package/dist/cli/registry.d.ts +2 -2
  114. package/dist/cli/registry.d.ts.map +1 -1
  115. package/dist/cli/registry.js +12 -37
  116. package/dist/cli/registry.js.map +1 -1
  117. package/dist/collectors/console.d.ts +1 -1
  118. package/dist/collectors/console.js +2 -2
  119. package/dist/collectors/console.js.map +1 -1
  120. package/dist/collectors/dom.d.ts +1 -1
  121. package/dist/collectors/network.d.ts +1 -2
  122. package/dist/collectors/network.d.ts.map +1 -1
  123. package/dist/collectors/network.js +3 -3
  124. package/dist/collectors/network.js.map +1 -1
  125. package/dist/commands/cdp.js +1 -1
  126. package/dist/commands/cdp.js.map +1 -1
  127. package/dist/commands/cleanup.d.ts.map +1 -1
  128. package/dist/commands/cleanup.js +12 -15
  129. package/dist/commands/cleanup.js.map +1 -1
  130. package/dist/commands/dom.d.ts.map +1 -1
  131. package/dist/commands/dom.js +13 -19
  132. package/dist/commands/dom.js.map +1 -1
  133. package/dist/commands/domEvalHelpers.d.ts +1 -1
  134. package/dist/commands/domEvalHelpers.d.ts.map +1 -1
  135. package/dist/commands/domEvalHelpers.js +56 -7
  136. package/dist/commands/domEvalHelpers.js.map +1 -1
  137. package/dist/commands/domOptionsBuilder.d.ts +32 -0
  138. package/dist/commands/domOptionsBuilder.d.ts.map +1 -1
  139. package/dist/commands/domOptionsBuilder.js +35 -0
  140. package/dist/commands/domOptionsBuilder.js.map +1 -1
  141. package/dist/commands/machineReadableHelp.d.ts +98 -0
  142. package/dist/commands/machineReadableHelp.d.ts.map +1 -0
  143. package/dist/commands/machineReadableHelp.js +137 -0
  144. package/dist/commands/machineReadableHelp.js.map +1 -0
  145. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  146. package/dist/commands/shared/CommandRunner.js +2 -3
  147. package/dist/commands/shared/CommandRunner.js.map +1 -1
  148. package/dist/commands/shared/OutputBuilder.js +1 -1
  149. package/dist/commands/shared/OutputBuilder.js.map +1 -1
  150. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  151. package/dist/commands/shared/commonOptions.js +9 -3
  152. package/dist/commands/shared/commonOptions.js.map +1 -1
  153. package/dist/commands/shared/daemonSessionController.d.ts +2 -0
  154. package/dist/commands/shared/daemonSessionController.d.ts.map +1 -1
  155. package/dist/commands/shared/daemonSessionController.js +13 -16
  156. package/dist/commands/shared/daemonSessionController.js.map +1 -1
  157. package/dist/commands/shared/sessionController.js +1 -1
  158. package/dist/commands/shared/sessionController.js.map +1 -1
  159. package/dist/commands/start.d.ts.map +1 -1
  160. package/dist/commands/start.js +16 -1
  161. package/dist/commands/start.js.map +1 -1
  162. package/dist/commands/status.d.ts.map +1 -1
  163. package/dist/commands/status.js +72 -55
  164. package/dist/commands/status.js.map +1 -1
  165. package/dist/commands/stop.d.ts.map +1 -1
  166. package/dist/commands/stop.js +11 -25
  167. package/dist/commands/stop.js.map +1 -1
  168. package/dist/commands/tail.d.ts +11 -0
  169. package/dist/commands/tail.d.ts.map +1 -0
  170. package/dist/commands/tail.js +114 -0
  171. package/dist/commands/tail.js.map +1 -0
  172. package/dist/commands.d.ts.map +1 -1
  173. package/dist/commands.js +2 -0
  174. package/dist/commands.js.map +1 -1
  175. package/dist/connection/cdp.d.ts +46 -2
  176. package/dist/connection/cdp.d.ts.map +1 -1
  177. package/dist/connection/cdp.js +71 -5
  178. package/dist/connection/cdp.js.map +1 -1
  179. package/dist/connection/diagnostics.d.ts +16 -0
  180. package/dist/connection/diagnostics.d.ts.map +1 -0
  181. package/dist/connection/diagnostics.js +37 -0
  182. package/dist/connection/diagnostics.js.map +1 -0
  183. package/dist/connection/errors.d.ts +74 -0
  184. package/dist/connection/errors.d.ts.map +1 -0
  185. package/dist/connection/errors.js +83 -0
  186. package/dist/connection/errors.js.map +1 -0
  187. package/dist/connection/handlers.d.ts +31 -0
  188. package/dist/connection/handlers.d.ts.map +1 -0
  189. package/dist/connection/handlers.js +38 -0
  190. package/dist/connection/handlers.js.map +1 -0
  191. package/dist/connection/launcher.d.ts +3 -20
  192. package/dist/connection/launcher.d.ts.map +1 -1
  193. package/dist/connection/launcher.js +130 -32
  194. package/dist/connection/launcher.js.map +1 -1
  195. package/dist/connection/pageReadiness.d.ts +46 -0
  196. package/dist/connection/pageReadiness.d.ts.map +1 -0
  197. package/dist/connection/pageReadiness.js +270 -0
  198. package/dist/connection/pageReadiness.js.map +1 -0
  199. package/dist/connection/tabs.d.ts +52 -0
  200. package/dist/connection/tabs.d.ts.map +1 -0
  201. package/dist/connection/tabs.js +227 -0
  202. package/dist/connection/tabs.js.map +1 -0
  203. package/dist/constants.d.ts +20 -40
  204. package/dist/constants.d.ts.map +1 -1
  205. package/dist/constants.js +26 -40
  206. package/dist/constants.js.map +1 -1
  207. package/dist/daemon/ipcServer.d.ts +5 -7
  208. package/dist/daemon/ipcServer.d.ts.map +1 -1
  209. package/dist/daemon/ipcServer.js +178 -143
  210. package/dist/daemon/ipcServer.js.map +1 -1
  211. package/dist/daemon/launcher.js +1 -1
  212. package/dist/daemon/launcher.js.map +1 -1
  213. package/dist/daemon/server/SocketServer.d.ts +22 -0
  214. package/dist/daemon/server/SocketServer.d.ts.map +1 -0
  215. package/dist/daemon/server/SocketServer.js +67 -0
  216. package/dist/daemon/server/SocketServer.js.map +1 -0
  217. package/dist/daemon/server/WorkerManager.d.ts +36 -0
  218. package/dist/daemon/server/WorkerManager.d.ts.map +1 -0
  219. package/dist/daemon/server/WorkerManager.js +98 -0
  220. package/dist/daemon/server/WorkerManager.js.map +1 -0
  221. package/dist/daemon/startSession.d.ts +2 -0
  222. package/dist/daemon/startSession.d.ts.map +1 -1
  223. package/dist/daemon/startSession.js +4 -2
  224. package/dist/daemon/startSession.js.map +1 -1
  225. package/dist/daemon/worker/TelemetryStore.d.ts +18 -0
  226. package/dist/daemon/worker/TelemetryStore.d.ts.map +1 -0
  227. package/dist/daemon/worker/TelemetryStore.js +49 -0
  228. package/dist/daemon/worker/TelemetryStore.js.map +1 -0
  229. package/dist/daemon/worker/collectors.d.ts +8 -0
  230. package/dist/daemon/worker/collectors.d.ts.map +1 -0
  231. package/dist/daemon/worker/collectors.js +19 -0
  232. package/dist/daemon/worker/collectors.js.map +1 -0
  233. package/dist/daemon/worker/commandRegistry.d.ts +10 -0
  234. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -0
  235. package/dist/daemon/worker/commandRegistry.js +289 -0
  236. package/dist/daemon/worker/commandRegistry.js.map +1 -0
  237. package/dist/daemon/worker/plugins.d.ts +21 -0
  238. package/dist/daemon/worker/plugins.d.ts.map +1 -0
  239. package/dist/daemon/worker/plugins.js +71 -0
  240. package/dist/daemon/worker/plugins.js.map +1 -0
  241. package/dist/daemon/worker/types.d.ts +13 -0
  242. package/dist/daemon/worker/types.d.ts.map +1 -0
  243. package/dist/daemon/worker/types.js +2 -0
  244. package/dist/daemon/worker/types.js.map +1 -0
  245. package/dist/daemon/worker.js +206 -529
  246. package/dist/daemon/worker.js.map +1 -1
  247. package/dist/help/machineReadableHelp.d.ts +100 -0
  248. package/dist/help/machineReadableHelp.d.ts.map +1 -0
  249. package/dist/help/machineReadableHelp.js +139 -0
  250. package/dist/help/machineReadableHelp.js.map +1 -0
  251. package/dist/index.js +18 -9
  252. package/dist/index.js.map +1 -1
  253. package/dist/ipc/__tests__/client.contract.test.js +2 -2
  254. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  255. package/dist/ipc/client.d.ts +3 -1
  256. package/dist/ipc/client.d.ts.map +1 -1
  257. package/dist/ipc/client.js +27 -14
  258. package/dist/ipc/client.js.map +1 -1
  259. package/dist/ipc/commands.d.ts +1 -0
  260. package/dist/ipc/commands.d.ts.map +1 -1
  261. package/dist/ipc/commands.js.map +1 -1
  262. package/dist/ipc/types.d.ts +2 -0
  263. package/dist/ipc/types.d.ts.map +1 -1
  264. package/dist/session/BdgSession.d.ts +91 -0
  265. package/dist/session/BdgSession.d.ts.map +1 -0
  266. package/dist/session/BdgSession.js +230 -0
  267. package/dist/session/BdgSession.js.map +1 -0
  268. package/dist/session/cleanup.d.ts.map +1 -1
  269. package/dist/session/cleanup.js +67 -65
  270. package/dist/session/cleanup.js.map +1 -1
  271. package/dist/session/fileOps.d.ts +25 -0
  272. package/dist/session/fileOps.d.ts.map +1 -0
  273. package/dist/session/fileOps.js +39 -0
  274. package/dist/session/fileOps.js.map +1 -0
  275. package/dist/session/metadata.js +2 -2
  276. package/dist/session/metadata.js.map +1 -1
  277. package/dist/session/paths.d.ts +2 -7
  278. package/dist/session/paths.d.ts.map +1 -1
  279. package/dist/session/paths.js +8 -8
  280. package/dist/session/paths.js.map +1 -1
  281. package/dist/session/queryCache.js +1 -1
  282. package/dist/session/queryCache.js.map +1 -1
  283. package/dist/telemetry/__tests__/filters.unit.test.d.ts +2 -0
  284. package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +1 -0
  285. package/dist/telemetry/__tests__/filters.unit.test.js +239 -0
  286. package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -0
  287. package/dist/telemetry/console.d.ts +1 -1
  288. package/dist/telemetry/console.d.ts.map +1 -1
  289. package/dist/telemetry/console.js +5 -3
  290. package/dist/telemetry/console.js.map +1 -1
  291. package/dist/telemetry/dialogs.d.ts +27 -0
  292. package/dist/telemetry/dialogs.d.ts.map +1 -0
  293. package/dist/telemetry/dialogs.js +51 -0
  294. package/dist/telemetry/dialogs.js.map +1 -0
  295. package/dist/telemetry/filters.d.ts +148 -0
  296. package/dist/telemetry/filters.d.ts.map +1 -0
  297. package/dist/telemetry/filters.js +358 -0
  298. package/dist/telemetry/filters.js.map +1 -0
  299. package/dist/telemetry/navigation.d.ts +49 -0
  300. package/dist/telemetry/navigation.d.ts.map +1 -0
  301. package/dist/telemetry/navigation.js +69 -0
  302. package/dist/telemetry/navigation.js.map +1 -0
  303. package/dist/telemetry/network.d.ts +1 -0
  304. package/dist/telemetry/network.d.ts.map +1 -1
  305. package/dist/telemetry/network.js +23 -34
  306. package/dist/telemetry/network.js.map +1 -1
  307. package/dist/types.d.ts +2 -0
  308. package/dist/types.d.ts.map +1 -1
  309. package/dist/ui/errors/CommandError.d.ts +39 -0
  310. package/dist/ui/errors/CommandError.d.ts.map +1 -0
  311. package/dist/ui/errors/CommandError.js +48 -0
  312. package/dist/ui/errors/CommandError.js.map +1 -0
  313. package/dist/ui/errors/SystemErrors.d.ts +22 -0
  314. package/dist/ui/errors/SystemErrors.d.ts.map +1 -0
  315. package/dist/ui/errors/SystemErrors.js +23 -0
  316. package/dist/ui/errors/SystemErrors.js.map +1 -0
  317. package/dist/ui/errors/index.d.ts +9 -0
  318. package/dist/ui/errors/index.d.ts.map +1 -0
  319. package/dist/ui/errors/index.js +12 -0
  320. package/dist/ui/errors/index.js.map +1 -0
  321. package/dist/ui/errors/utils.d.ts +24 -0
  322. package/dist/ui/errors/utils.d.ts.map +1 -0
  323. package/dist/ui/errors/utils.js +28 -0
  324. package/dist/ui/errors/utils.js.map +1 -0
  325. package/dist/ui/formatters/status.d.ts.map +1 -1
  326. package/dist/ui/formatters/status.js +1 -1
  327. package/dist/ui/formatters/status.js.map +1 -1
  328. package/dist/ui/logging/index.d.ts +7 -0
  329. package/dist/ui/logging/index.d.ts.map +1 -0
  330. package/dist/ui/logging/index.js +7 -0
  331. package/dist/ui/logging/index.js.map +1 -0
  332. package/dist/ui/logging/logger.d.ts +98 -0
  333. package/dist/ui/logging/logger.d.ts.map +1 -0
  334. package/dist/ui/logging/logger.js +93 -0
  335. package/dist/ui/logging/logger.js.map +1 -0
  336. package/dist/ui/messages/chrome.d.ts +50 -1
  337. package/dist/ui/messages/chrome.d.ts.map +1 -1
  338. package/dist/ui/messages/chrome.js +77 -0
  339. package/dist/ui/messages/chrome.js.map +1 -1
  340. package/dist/ui/messages/deprecation.d.ts +30 -0
  341. package/dist/ui/messages/deprecation.d.ts.map +1 -0
  342. package/dist/ui/messages/deprecation.js +49 -0
  343. package/dist/ui/messages/deprecation.js.map +1 -0
  344. package/dist/ui/messages/preview.js +1 -1
  345. package/dist/ui/messages/preview.js.map +1 -1
  346. package/dist/ui/messages/session.d.ts.map +1 -1
  347. package/dist/ui/messages/session.js +21 -7
  348. package/dist/ui/messages/session.js.map +1 -1
  349. package/dist/utils/__tests__/session.contract.test.js +15 -1
  350. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  351. package/dist/utils/filters.d.ts +40 -0
  352. package/dist/utils/filters.d.ts.map +1 -1
  353. package/dist/utils/filters.js +54 -0
  354. package/dist/utils/filters.js.map +1 -1
  355. package/dist/utils/pageReadiness.js +24 -25
  356. package/dist/utils/pageReadiness.js.map +1 -1
  357. package/dist/utils/session.d.ts +200 -0
  358. package/dist/utils/session.d.ts.map +1 -0
  359. package/dist/utils/session.js +498 -0
  360. package/dist/utils/session.js.map +1 -0
  361. package/dist/utils/url.d.ts.map +1 -1
  362. package/dist/utils/url.js +10 -0
  363. package/dist/utils/url.js.map +1 -1
  364. package/dist/utils/validation.d.ts +12 -0
  365. package/dist/utils/validation.d.ts.map +1 -0
  366. package/dist/utils/validation.js +20 -0
  367. package/dist/utils/validation.js.map +1 -0
  368. package/package.json +2 -1
  369. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +0 -24
  370. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
  371. package/dist/cli/commands/__tests__/cdp.contract.test.js +0 -467
  372. package/dist/cli/commands/__tests__/cdp.contract.test.js.map +0 -1
  373. package/dist/cli/commands/cdp.d.ts +0 -8
  374. package/dist/cli/commands/cdp.d.ts.map +0 -1
  375. package/dist/cli/commands/cdp.js +0 -45
  376. package/dist/cli/commands/cdp.js.map +0 -1
  377. package/dist/cli/commands/console.d.ts +0 -8
  378. package/dist/cli/commands/console.d.ts.map +0 -1
  379. package/dist/cli/commands/console.js +0 -97
  380. package/dist/cli/commands/console.js.map +0 -1
  381. package/dist/cli/commands/dom/helpers/domCache.d.ts +0 -36
  382. package/dist/cli/commands/dom/helpers/domCache.d.ts.map +0 -1
  383. package/dist/cli/commands/dom/helpers/domCache.js +0 -65
  384. package/dist/cli/commands/dom/helpers/domCache.js.map +0 -1
  385. package/dist/cli/commands/dom/helpers/domQuery.d.ts +0 -48
  386. package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +0 -1
  387. package/dist/cli/commands/dom/helpers/domQuery.js +0 -104
  388. package/dist/cli/commands/dom/helpers/domQuery.js.map +0 -1
  389. package/dist/cli/commands/dom/helpers/errorHandler.d.ts +0 -45
  390. package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +0 -1
  391. package/dist/cli/commands/dom/helpers/errorHandler.js +0 -71
  392. package/dist/cli/commands/dom/helpers/errorHandler.js.map +0 -1
  393. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +0 -52
  394. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +0 -1
  395. package/dist/cli/commands/dom/helpers/evalHelpers.js +0 -75
  396. package/dist/cli/commands/dom/helpers/evalHelpers.js.map +0 -1
  397. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +0 -35
  398. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +0 -1
  399. package/dist/cli/commands/dom/helpers/optionsBuilder.js +0 -51
  400. package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +0 -1
  401. package/dist/cli/commands/dom/helpers/selectorParser.d.ts +0 -20
  402. package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +0 -1
  403. package/dist/cli/commands/dom/helpers/selectorParser.js +0 -20
  404. package/dist/cli/commands/dom/helpers/selectorParser.js.map +0 -1
  405. package/dist/cli/commands/dom/index.d.ts +0 -8
  406. package/dist/cli/commands/dom/index.d.ts.map +0 -1
  407. package/dist/cli/commands/dom/index.js +0 -257
  408. package/dist/cli/commands/dom/index.js.map +0 -1
  409. package/dist/cli/commands/dom.d.ts +0 -8
  410. package/dist/cli/commands/dom.d.ts.map +0 -1
  411. package/dist/cli/commands/dom.js +0 -257
  412. package/dist/cli/commands/dom.js.map +0 -1
  413. package/dist/cli/commands/domErrorHandler.d.ts +0 -45
  414. package/dist/cli/commands/domErrorHandler.d.ts.map +0 -1
  415. package/dist/cli/commands/domErrorHandler.js +0 -71
  416. package/dist/cli/commands/domErrorHandler.js.map +0 -1
  417. package/dist/cli/commands/domEvalHelpers.d.ts +0 -52
  418. package/dist/cli/commands/domEvalHelpers.d.ts.map +0 -1
  419. package/dist/cli/commands/domEvalHelpers.js +0 -76
  420. package/dist/cli/commands/domEvalHelpers.js.map +0 -1
  421. package/dist/cli/commands/domOptionsBuilder.d.ts +0 -35
  422. package/dist/cli/commands/domOptionsBuilder.d.ts.map +0 -1
  423. package/dist/cli/commands/domOptionsBuilder.js +0 -51
  424. package/dist/cli/commands/domOptionsBuilder.js.map +0 -1
  425. package/dist/cli/commands/domSelectorParser.d.ts +0 -20
  426. package/dist/cli/commands/domSelectorParser.d.ts.map +0 -1
  427. package/dist/cli/commands/domSelectorParser.js +0 -20
  428. package/dist/cli/commands/domSelectorParser.js.map +0 -1
  429. package/dist/cli/commands/network.d.ts +0 -8
  430. package/dist/cli/commands/network.d.ts.map +0 -1
  431. package/dist/cli/commands/network.js +0 -43
  432. package/dist/cli/commands/network.js.map +0 -1
  433. package/dist/cli/handlers/CommandRunner.d.ts +0 -60
  434. package/dist/cli/handlers/CommandRunner.d.ts.map +0 -1
  435. package/dist/cli/handlers/CommandRunner.js +0 -81
  436. package/dist/cli/handlers/CommandRunner.js.map +0 -1
  437. package/dist/cli/handlers/commonOptions.d.ts +0 -54
  438. package/dist/cli/handlers/commonOptions.d.ts.map +0 -1
  439. package/dist/cli/handlers/commonOptions.js +0 -64
  440. package/dist/cli/handlers/commonOptions.js.map +0 -1
  441. package/dist/cli/handlers/daemonSessionController.d.ts +0 -23
  442. package/dist/cli/handlers/daemonSessionController.d.ts.map +0 -1
  443. package/dist/cli/handlers/daemonSessionController.js +0 -79
  444. package/dist/cli/handlers/daemonSessionController.js.map +0 -1
  445. package/dist/cli/handlers/landingPage.d.ts +0 -8
  446. package/dist/cli/handlers/landingPage.d.ts.map +0 -1
  447. package/dist/cli/handlers/landingPage.js +0 -8
  448. package/dist/cli/handlers/landingPage.js.map +0 -1
  449. package/dist/collectors/__tests__/network.contract.test.d.ts +0 -28
  450. package/dist/collectors/__tests__/network.contract.test.d.ts.map +0 -1
  451. package/dist/collectors/__tests__/network.contract.test.js +0 -540
  452. package/dist/collectors/__tests__/network.contract.test.js.map +0 -1
  453. package/dist/commandRegistry.d.ts +0 -11
  454. package/dist/commandRegistry.d.ts.map +0 -1
  455. package/dist/commandRegistry.js +0 -45
  456. package/dist/commandRegistry.js.map +0 -1
  457. package/dist/commands/domErrorHandler.d.ts +0 -45
  458. package/dist/commands/domErrorHandler.d.ts.map +0 -1
  459. package/dist/commands/domErrorHandler.js +0 -71
  460. package/dist/commands/domErrorHandler.js.map +0 -1
  461. package/dist/dom/cache.d.ts +0 -36
  462. package/dist/dom/cache.d.ts.map +0 -1
  463. package/dist/dom/cache.js +0 -65
  464. package/dist/dom/cache.js.map +0 -1
  465. package/dist/dom/index.d.ts +0 -9
  466. package/dist/dom/index.d.ts.map +0 -1
  467. package/dist/dom/index.js +0 -9
  468. package/dist/dom/index.js.map +0 -1
  469. package/dist/dom/query.d.ts +0 -48
  470. package/dist/dom/query.d.ts.map +0 -1
  471. package/dist/dom/query.js +0 -104
  472. package/dist/dom/query.js.map +0 -1
  473. package/dist/utils/formatters/network.d.ts +0 -23
  474. package/dist/utils/formatters/network.d.ts.map +0 -1
  475. package/dist/utils/formatters/network.js +0 -35
  476. package/dist/utils/formatters/network.js.map +0 -1
  477. package/dist/utils/ui.d.ts +0 -36
  478. package/dist/utils/ui.d.ts.map +0 -1
  479. package/dist/utils/ui.js +0 -47
  480. package/dist/utils/ui.js.map +0 -1
  481. package/dist/utils/url/safeParseUrl.d.ts +0 -63
  482. package/dist/utils/url/safeParseUrl.d.ts.map +0 -1
  483. package/dist/utils/url/safeParseUrl.js +0 -84
  484. package/dist/utils/url/safeParseUrl.js.map +0 -1
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Interface for shutdown callback
3
+ */
4
+ export interface SignalHandlerOptions {
5
+ onShutdown: () => Promise<void>;
6
+ }
7
+ /**
8
+ * Manages process signal handling for graceful shutdown
9
+ */
10
+ export declare class SignalHandler {
11
+ private options;
12
+ private isHandling;
13
+ constructor(options: SignalHandlerOptions);
14
+ /**
15
+ * Register signal handlers for graceful shutdown.
16
+ */
17
+ register(): void;
18
+ /**
19
+ * Unregister all signal handlers.
20
+ */
21
+ unregister(): void;
22
+ /**
23
+ * Handle shutdown signals (SIGINT, SIGTERM)
24
+ */
25
+ private handleSignal;
26
+ /**
27
+ * Handle unhandled promise rejections
28
+ */
29
+ private handleUnhandledRejection;
30
+ /**
31
+ * Handle uncaught exceptions
32
+ */
33
+ private handleUncaughtException;
34
+ }
35
+ //# sourceMappingURL=SignalHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignalHandler.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/SignalHandler.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,aAAa;IAGZ,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,UAAU,CAAS;gBAEP,OAAO,EAAE,oBAAoB;IAEjD;;OAEG;IACH,QAAQ,IAAI,IAAI;IAUhB;;OAEG;IACH,UAAU,IAAI,IAAI;IAOlB;;OAEG;IACH,OAAO,CAAC,YAAY;IAqBpB;;OAEG;IACH,OAAO,CAAC,wBAAwB,CAS9B;IAEF;;OAEG;IACH,OAAO,CAAC,uBAAuB,CAS7B;CACH"}
@@ -0,0 +1,81 @@
1
+ import { EXIT_CODES } from '../../utils/exitCodes.js';
2
+ import { cleanupSession } from '../../utils/session.js';
3
+ /**
4
+ * Manages process signal handling for graceful shutdown
5
+ */
6
+ export class SignalHandler {
7
+ options;
8
+ isHandling = false;
9
+ constructor(options) {
10
+ this.options = options;
11
+ }
12
+ /**
13
+ * Register signal handlers for graceful shutdown.
14
+ */
15
+ register() {
16
+ const handler = (signal) => this.handleSignal(signal);
17
+ process.on('SIGINT', () => handler('SIGINT'));
18
+ process.on('SIGTERM', () => handler('SIGTERM'));
19
+ process.on('unhandledRejection', this.handleUnhandledRejection);
20
+ process.on('uncaughtException', this.handleUncaughtException);
21
+ }
22
+ /**
23
+ * Unregister all signal handlers.
24
+ */
25
+ unregister() {
26
+ process.removeAllListeners('SIGINT');
27
+ process.removeAllListeners('SIGTERM');
28
+ process.removeAllListeners('unhandledRejection');
29
+ process.removeAllListeners('uncaughtException');
30
+ }
31
+ /**
32
+ * Handle shutdown signals (SIGINT, SIGTERM)
33
+ */
34
+ handleSignal(signal) {
35
+ if (this.isHandling) {
36
+ return;
37
+ }
38
+ this.isHandling = true;
39
+ console.error(`\nReceived ${signal}, shutting down gracefully...`);
40
+ this.unregister();
41
+ void (async () => {
42
+ try {
43
+ await this.options.onShutdown();
44
+ // onShutdown calls process.exit(), so we should never reach here
45
+ }
46
+ catch (error) {
47
+ console.error('Fatal error during shutdown:', error);
48
+ process.exit(EXIT_CODES.SIGNAL_HANDLER_ERROR);
49
+ }
50
+ })();
51
+ }
52
+ /**
53
+ * Handle unhandled promise rejections
54
+ */
55
+ handleUnhandledRejection = (reason) => {
56
+ console.error('Unhandled rejection:', reason);
57
+ console.error('Cleaning up session files...');
58
+ try {
59
+ cleanupSession();
60
+ }
61
+ catch (error) {
62
+ console.error('Error during cleanup:', error);
63
+ }
64
+ process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
65
+ };
66
+ /**
67
+ * Handle uncaught exceptions
68
+ */
69
+ handleUncaughtException = (error) => {
70
+ console.error('Uncaught exception:', error);
71
+ console.error('Cleaning up session files...');
72
+ try {
73
+ cleanupSession();
74
+ }
75
+ catch (cleanupError) {
76
+ console.error('Error during cleanup:', cleanupError);
77
+ }
78
+ process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
79
+ };
80
+ }
81
+ //# sourceMappingURL=SignalHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SignalHandler.js","sourceRoot":"","sources":["../../../src/cli/handlers/SignalHandler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { BdgSession } from '../../session/BdgSession.js';
2
+ import type { CDPTarget, SessionOptions } from '../../types.js';
3
+ /**
4
+ * Handles CDP target setup and session creation
5
+ */
6
+ export declare class TargetSetup {
7
+ /**
8
+ * Create CDP connection and find/create target tab
9
+ *
10
+ * @param url - Original URL from CLI (for matching)
11
+ * @param targetUrl - Normalized target URL
12
+ * @param port - Chrome debugging port
13
+ * @param reuseTab - Whether to reuse existing tab
14
+ * @param sessionOptions - Session-level collection options
15
+ * @returns Session and target metadata
16
+ */
17
+ static setup(url: string, targetUrl: string, port: number, reuseTab: boolean, sessionOptions?: SessionOptions): Promise<{
18
+ session: BdgSession;
19
+ target: CDPTarget;
20
+ }>;
21
+ /**
22
+ * Fetch the current list of available CDP targets from Chrome.
23
+ * Used during session bootstrap to select a temporary connection target and to
24
+ * refresh metadata when the session creates or reuses tabs.
25
+ *
26
+ * @param port - Chrome debugging port
27
+ * @returns Array of CDP targets
28
+ */
29
+ private static fetchTargets;
30
+ /**
31
+ * Locate a specific CDP target by ID. Falls back to a fresh fetch when cached
32
+ * metadata is missing or incomplete (e.g., webSocketDebuggerUrl absent).
33
+ *
34
+ * @param targetId - Target ID to find
35
+ * @param port - Chrome debugging port
36
+ * @param cachedTargets - Optional cached target list
37
+ * @returns CDP target with webSocketDebuggerUrl
38
+ * @throws Error if target not found or missing webSocketDebuggerUrl
39
+ */
40
+ private static findTargetById;
41
+ }
42
+ //# sourceMappingURL=TargetSetup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TargetSetup.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/TargetSetup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzD;;GAEG;AACH,qBAAa,WAAW;IACtB;;;;;;;;;OASG;WACU,KAAK,CAChB,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EACjB,cAAc,GAAE,cAAmB,GAClC,OAAO,CAAC;QAAE,OAAO,EAAE,UAAU,CAAC;QAAC,MAAM,EAAE,SAAS,CAAA;KAAE,CAAC;IAoCtD;;;;;;;OAOG;mBACkB,YAAY;IAKjC;;;;;;;;;OASG;mBACkB,cAAc;CA2BpC"}
@@ -0,0 +1,87 @@
1
+ import { createOrFindTarget } from '../../connection/tabs.js';
2
+ import { BdgSession } from '../../session/BdgSession.js';
3
+ /**
4
+ * Handles CDP target setup and session creation
5
+ */
6
+ export class TargetSetup {
7
+ /**
8
+ * Create CDP connection and find/create target tab
9
+ *
10
+ * @param url - Original URL from CLI (for matching)
11
+ * @param targetUrl - Normalized target URL
12
+ * @param port - Chrome debugging port
13
+ * @param reuseTab - Whether to reuse existing tab
14
+ * @param sessionOptions - Session-level collection options
15
+ * @returns Session and target metadata
16
+ */
17
+ static async setup(url, targetUrl, port, reuseTab, sessionOptions = {}) {
18
+ // Fetch targets once
19
+ const initialTargets = await this.fetchTargets(port);
20
+ if (initialTargets.length === 0) {
21
+ throw new Error('No targets available in Chrome');
22
+ }
23
+ // Use first available target to establish CDP connection
24
+ const tempTarget = initialTargets[0];
25
+ if (!tempTarget) {
26
+ throw new Error('No targets available in Chrome');
27
+ }
28
+ const tempSession = new BdgSession(tempTarget, port, sessionOptions);
29
+ await tempSession.connect();
30
+ if (!tempSession.isConnected()) {
31
+ throw new Error('Failed to establish CDP connection');
32
+ }
33
+ // Create or find target tab using TabManager
34
+ console.error(`Finding or creating tab for: ${targetUrl}`);
35
+ const target = await createOrFindTarget(url, tempSession.getCDP(), reuseTab);
36
+ console.error(`Using tab: ${target.url}`);
37
+ // Find full target metadata (refetches only if not in cache or new tab created)
38
+ const fullTarget = await this.findTargetById(target.id, port, initialTargets);
39
+ // Close temp session and reconnect to the correct target
40
+ tempSession.getCDP().close();
41
+ const session = new BdgSession(fullTarget, port, sessionOptions);
42
+ await session.connect();
43
+ return { session, target: fullTarget };
44
+ }
45
+ /**
46
+ * Fetch the current list of available CDP targets from Chrome.
47
+ * Used during session bootstrap to select a temporary connection target and to
48
+ * refresh metadata when the session creates or reuses tabs.
49
+ *
50
+ * @param port - Chrome debugging port
51
+ * @returns Array of CDP targets
52
+ */
53
+ static async fetchTargets(port) {
54
+ const response = await fetch(`http://127.0.0.1:${port}/json/list`);
55
+ return (await response.json());
56
+ }
57
+ /**
58
+ * Locate a specific CDP target by ID. Falls back to a fresh fetch when cached
59
+ * metadata is missing or incomplete (e.g., webSocketDebuggerUrl absent).
60
+ *
61
+ * @param targetId - Target ID to find
62
+ * @param port - Chrome debugging port
63
+ * @param cachedTargets - Optional cached target list
64
+ * @returns CDP target with webSocketDebuggerUrl
65
+ * @throws Error if target not found or missing webSocketDebuggerUrl
66
+ */
67
+ static async findTargetById(targetId, port, cachedTargets) {
68
+ // First check cached targets if provided
69
+ if (cachedTargets) {
70
+ const cached = cachedTargets.find((t) => t.id === targetId);
71
+ if (cached?.webSocketDebuggerUrl) {
72
+ return cached;
73
+ }
74
+ }
75
+ // Not in cache or missing webSocketDebuggerUrl - refetch
76
+ const targets = await this.fetchTargets(port);
77
+ const target = targets.find((t) => t.id === targetId);
78
+ if (!target) {
79
+ throw new Error(`Could not find target ${targetId}`);
80
+ }
81
+ if (!target.webSocketDebuggerUrl) {
82
+ throw new Error(`Could not find webSocketDebuggerUrl for target ${targetId}`);
83
+ }
84
+ return target;
85
+ }
86
+ }
87
+ //# sourceMappingURL=TargetSetup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TargetSetup.js","sourceRoot":"","sources":["../../../src/cli/handlers/TargetSetup.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { CollectorType } from '../../types.js';
1
2
  /**
2
3
  * Aggressively cleanup stale Chrome processes launched by bdg.
3
4
  *
@@ -18,4 +19,44 @@
18
19
  * @returns Number of errors encountered during cleanup
19
20
  */
20
21
  export declare function cleanupStaleChrome(): Promise<number>;
22
+ /**
23
+ * Start a new session
24
+ *
25
+ * @param url - Target URL to navigate to
26
+ * @param options - Session configuration options
27
+ * @param options.port - Chrome debugging port
28
+ * @param options.timeout - Auto-stop after timeout (seconds)
29
+ * @param options.reuseTab - Navigate existing tab instead of creating new one
30
+ * @param options.userDataDir - Chrome user data directory
31
+ * @param options.includeAll - Include all data (disable filtering)
32
+ * @param options.logLevel - Chrome launcher log level
33
+ * @param options.prefs - Chrome preferences as object
34
+ * @param options.prefsFile - Path to JSON file containing Chrome preferences
35
+ * @param options.chromeFlags - Additional Chrome command-line flags
36
+ * @param options.connectionPollInterval - Milliseconds between CDP readiness checks
37
+ * @param options.maxConnectionRetries - Maximum retry attempts before failing
38
+ * @param options.portStrictMode - Fail if Chrome debugging port is already in use
39
+ * @param collectors - Array of collector types to enable ('dom', 'network', 'console')
40
+ * @returns Promise that resolves when session completes
41
+ */
42
+ export declare function startSession(url: string, options: {
43
+ port: number;
44
+ timeout?: number | undefined;
45
+ reuseTab?: boolean | undefined;
46
+ userDataDir?: string | undefined;
47
+ includeAll?: boolean | undefined;
48
+ logLevel?: 'verbose' | 'info' | 'error' | 'silent' | undefined;
49
+ prefs?: Record<string, unknown> | undefined;
50
+ prefsFile?: string | undefined;
51
+ chromeFlags?: string[] | undefined;
52
+ connectionPollInterval?: number | undefined;
53
+ maxConnectionRetries?: number | undefined;
54
+ portStrictMode?: boolean | undefined;
55
+ fetchAllBodies?: boolean | undefined;
56
+ fetchBodiesInclude?: string[] | undefined;
57
+ fetchBodiesExclude?: string[] | undefined;
58
+ networkInclude?: string[] | undefined;
59
+ networkExclude?: string[] | undefined;
60
+ compact?: boolean | undefined;
61
+ }, collectors: CollectorType[]): Promise<void>;
21
62
  //# sourceMappingURL=sessionController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessionController.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CAuC1D"}
1
+ {"version":3,"file":"sessionController.d.ts","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAA6C,MAAM,SAAS,CAAC;AA4CxF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,CA0C1D;AA8HD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACP,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACnC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,EACD,UAAU,EAAE,aAAa,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CA6If"}
@@ -1,4 +1,40 @@
1
- import { getErrorMessage } from '../../utils/errors.js';
1
+ import { getChromeDiagnostics, formatDiagnosticsForError } from '../../utils/chromeDiagnostics.js';
2
+ import { ChromeLaunchError } from '../../utils/errors.js';
3
+ import { getExitCodeForError } from '../../utils/exitCodes.js';
4
+ import { writePid, writeSessionMetadata, writeChromePid } from '../../utils/session.js';
5
+ import { ChromeBootstrap } from './ChromeBootstrap.js';
6
+ import { OutputBuilder } from './OutputBuilder.js';
7
+ import { PreviewWriter } from './PreviewWriter.js';
8
+ import { SessionLock } from './SessionLock.js';
9
+ import { SessionLoop } from './SessionLoop.js';
10
+ import { ShutdownController } from './ShutdownController.js';
11
+ import { SignalHandler } from './SignalHandler.js';
12
+ import { TargetSetup } from './TargetSetup.js';
13
+ /**
14
+ * Report detailed diagnostic information when Chrome fails to launch.
15
+ *
16
+ * Uses chrome-launcher APIs to detect available Chrome installations and
17
+ * provide actionable error messages to help users troubleshoot.
18
+ *
19
+ * @param error Original error that caused the failure
20
+ */
21
+ function reportLauncherFailure(error) {
22
+ console.error('\n--- Chrome Launch Diagnostics ---\n');
23
+ // Show original error
24
+ const errorMessage = error instanceof Error ? error.message : String(error);
25
+ console.error(`Error: ${errorMessage}\n`);
26
+ // Get diagnostics using shared utility (cached to avoid repeated scans)
27
+ const diagnostics = getChromeDiagnostics();
28
+ const diagnosticLines = formatDiagnosticsForError(diagnostics);
29
+ diagnosticLines.forEach((line) => console.error(line));
30
+ // Provide troubleshooting steps
31
+ console.error('Troubleshooting:');
32
+ console.error(' 1. Verify Chrome is installed and accessible');
33
+ console.error(' 2. Check file permissions for Chrome binary');
34
+ console.error(' 3. Try specifying a custom port: bdg <url> --port 9223');
35
+ console.error(' 4. Use strict port mode: bdg <url> --port-strict');
36
+ console.error(' 5. Check if another process is using the debugging port\n');
37
+ }
2
38
  /**
3
39
  * Aggressively cleanup stale Chrome processes launched by bdg.
4
40
  *
@@ -22,8 +58,8 @@ export async function cleanupStaleChrome() {
22
58
  console.error('\nAttempting to kill stale Chrome processes...');
23
59
  try {
24
60
  // Import session utilities (dynamic import for ES modules)
25
- const { readChromePid, clearChromePid } = await import('../../session/chrome.js');
26
- const { killChromeProcess } = await import('../../session/process.js');
61
+ const sessionModule = await import('../../utils/session.js');
62
+ const { readChromePid, clearChromePid, killChromeProcess } = sessionModule;
27
63
  // Read Chrome PID from persistent cache
28
64
  const chromePid = readChromePid();
29
65
  if (!chromePid) {
@@ -42,14 +78,239 @@ export async function cleanupStaleChrome() {
42
78
  return 0;
43
79
  }
44
80
  catch (killError) {
45
- console.error(`Error: Failed to kill Chrome process: ${getErrorMessage(killError)}`);
81
+ const errorMessage = killError instanceof Error ? killError.message : String(killError);
82
+ console.error(`Error: Failed to kill Chrome process: ${errorMessage}`);
46
83
  console.error(' Try manually killing Chrome processes if issues persist\n');
47
84
  return 1;
48
85
  }
49
86
  }
50
87
  catch (error) {
51
- console.error(`Error: Failed to cleanup Chrome processes: ${getErrorMessage(error)}\n`);
88
+ console.error(`Error: Failed to cleanup Chrome processes: ${error instanceof Error ? error.message : String(error)}\n`);
52
89
  return 1;
53
90
  }
54
91
  }
92
+ /**
93
+ * Encapsulates session state and lifecycle management
94
+ */
95
+ class SessionContext {
96
+ session = null;
97
+ launchedChrome = null;
98
+ isShuttingDown = false;
99
+ previewWriter = null;
100
+ startTime;
101
+ target = null;
102
+ compact;
103
+ shutdownController;
104
+ /**
105
+ * Create a new session context and track the start timestamp.
106
+ * The context is shared with signal handlers so they can orchestrate shutdown.
107
+ *
108
+ * @param compact - If true, use compact JSON format (no indentation)
109
+ */
110
+ constructor(compact = false) {
111
+ this.startTime = Date.now();
112
+ this.compact = compact;
113
+ this.shutdownController = new ShutdownController(this);
114
+ }
115
+ /**
116
+ * Handle graceful shutdown: stops collectors, writes output, and exits.
117
+ *
118
+ * Idempotent — repeated calls after shutdown has started are ignored.
119
+ */
120
+ async stop() {
121
+ await this.shutdownController.shutdown();
122
+ }
123
+ /**
124
+ * Cleanup on error paths without exiting the process.
125
+ * Clears timers, tears down Chrome if bdg launched it, and removes session files.
126
+ */
127
+ async cleanup() {
128
+ await this.shutdownController.cleanup();
129
+ }
130
+ }
131
+ /**
132
+ * Phase 4: start requested collectors and persist session metadata for tooling.
133
+ *
134
+ * @param session Active BDG session instance
135
+ * @param collectors Collector types requested by the CLI
136
+ * @param startTime Timestamp when the session began
137
+ * @param port Chrome debugging port in use
138
+ * @param target Target metadata (includes websocket URL)
139
+ * @param chromePid PID of Chrome if bdg launched it (optional)
140
+ */
141
+ async function startCollectorsAndMetadata(session, collectors, startTime, port, target, chromePid) {
142
+ // Start collectors with timing
143
+ const collectorStartTime = Date.now();
144
+ for (const collector of collectors) {
145
+ const individualStart = Date.now();
146
+ await session.startCollector(collector);
147
+ const individualDuration = Date.now() - individualStart;
148
+ console.error(`[PERF] Collector '${collector}' initialized: ${individualDuration}ms`);
149
+ }
150
+ const totalCollectorDuration = Date.now() - collectorStartTime;
151
+ console.error(`[PERF] All collectors initialized: ${totalCollectorDuration}ms`);
152
+ // Write session metadata
153
+ writePid(process.pid);
154
+ writeSessionMetadata({
155
+ bdgPid: process.pid,
156
+ chromePid,
157
+ startTime,
158
+ port,
159
+ targetId: target.id,
160
+ webSocketDebuggerUrl: target.webSocketDebuggerUrl,
161
+ activeCollectors: collectors,
162
+ });
163
+ // Note: Chrome PID cache is written immediately after launch (Phase 2)
164
+ // to ensure it's available even if later phases fail
165
+ }
166
+ /**
167
+ * Phase 5: Start preview writer with two-tier system
168
+ *
169
+ * Uses async I/O with mutex to prevent event loop blocking and overlapping writes.
170
+ */
171
+ function startPreviewWriter(context, compact) {
172
+ if (!context.session) {
173
+ return;
174
+ }
175
+ // Create and start preview writer
176
+ context.previewWriter = new PreviewWriter(context.session, context.startTime, 5000, // intervalMs
177
+ compact);
178
+ context.previewWriter.start();
179
+ }
180
+ /**
181
+ * Print collection status message
182
+ */
183
+ function printCollectionStatus(collectors, timeout) {
184
+ const collectorNames = collectors.length === 3 ? 'network, console, and DOM' : collectors.join(', ');
185
+ if (timeout) {
186
+ console.error(`Collecting ${collectorNames}... (Ctrl+C to stop and output, or wait ${timeout}s for timeout)`);
187
+ }
188
+ else {
189
+ console.error(`Collecting ${collectorNames}... (Ctrl+C to stop and output, or use 'bdg stop')`);
190
+ }
191
+ }
192
+ /**
193
+ * Start a new session
194
+ *
195
+ * @param url - Target URL to navigate to
196
+ * @param options - Session configuration options
197
+ * @param options.port - Chrome debugging port
198
+ * @param options.timeout - Auto-stop after timeout (seconds)
199
+ * @param options.reuseTab - Navigate existing tab instead of creating new one
200
+ * @param options.userDataDir - Chrome user data directory
201
+ * @param options.includeAll - Include all data (disable filtering)
202
+ * @param options.logLevel - Chrome launcher log level
203
+ * @param options.prefs - Chrome preferences as object
204
+ * @param options.prefsFile - Path to JSON file containing Chrome preferences
205
+ * @param options.chromeFlags - Additional Chrome command-line flags
206
+ * @param options.connectionPollInterval - Milliseconds between CDP readiness checks
207
+ * @param options.maxConnectionRetries - Maximum retry attempts before failing
208
+ * @param options.portStrictMode - Fail if Chrome debugging port is already in use
209
+ * @param collectors - Array of collector types to enable ('dom', 'network', 'console')
210
+ * @returns Promise that resolves when session completes
211
+ */
212
+ export async function startSession(url, options, collectors) {
213
+ const context = new SessionContext(options.compact ?? false);
214
+ // Setup signal handlers for graceful shutdown
215
+ const signalHandler = new SignalHandler({
216
+ onShutdown: async () => {
217
+ await context.stop();
218
+ },
219
+ });
220
+ signalHandler.register();
221
+ try {
222
+ // Phase 1: Lock acquisition and validation
223
+ const targetUrl = SessionLock.acquire(url, collectors);
224
+ // Phase 2: Chrome bootstrap
225
+ // Build launcher options, filtering out undefined values
226
+ const launchOptions = Object.fromEntries(Object.entries({
227
+ userDataDir: options.userDataDir,
228
+ logLevel: options.logLevel,
229
+ prefs: options.prefs,
230
+ prefsFile: options.prefsFile,
231
+ chromeFlags: options.chromeFlags,
232
+ connectionPollInterval: options.connectionPollInterval,
233
+ maxConnectionRetries: options.maxConnectionRetries,
234
+ portStrictMode: options.portStrictMode,
235
+ }).filter(([, value]) => value !== undefined));
236
+ context.launchedChrome = await ChromeBootstrap.launch(options.port, targetUrl, launchOptions);
237
+ // Write Chrome PID to persistent cache immediately after launch
238
+ // This must happen before Phase 3 so it's available even if setup fails
239
+ if (context.launchedChrome?.pid) {
240
+ writeChromePid(context.launchedChrome.pid);
241
+ }
242
+ // Phase 3: CDP connection and target setup
243
+ const setupStart = Date.now();
244
+ const sessionOptions = {
245
+ includeAll: options.includeAll ?? false,
246
+ fetchAllBodies: options.fetchAllBodies ?? false,
247
+ compact: options.compact ?? false,
248
+ };
249
+ if (options.fetchBodiesInclude !== undefined) {
250
+ sessionOptions.fetchBodiesInclude = options.fetchBodiesInclude;
251
+ }
252
+ if (options.fetchBodiesExclude !== undefined) {
253
+ sessionOptions.fetchBodiesExclude = options.fetchBodiesExclude;
254
+ }
255
+ if (options.networkInclude !== undefined) {
256
+ sessionOptions.networkInclude = options.networkInclude;
257
+ }
258
+ if (options.networkExclude !== undefined) {
259
+ sessionOptions.networkExclude = options.networkExclude;
260
+ }
261
+ const setupResult = await TargetSetup.setup(url, targetUrl, options.port, options.reuseTab ?? false, sessionOptions);
262
+ const session = setupResult.session;
263
+ const target = setupResult.target;
264
+ context.session = session;
265
+ context.target = target;
266
+ console.error(`[PERF] CDP connection and target setup: ${Date.now() - setupStart}ms`);
267
+ // Phase 4: Start collectors and write metadata
268
+ await startCollectorsAndMetadata(session, collectors, context.startTime, options.port, target, context.launchedChrome?.pid);
269
+ // Log active collectors for forensic tracking and optimization prioritization
270
+ console.error(`[bdg] active collectors: ${collectors.join(', ')} (${url}, port ${options.port})`);
271
+ // Total session startup time
272
+ const totalStartupTime = Date.now() - context.startTime;
273
+ console.error(`[PERF] Total session startup: ${totalStartupTime}ms`);
274
+ // Print status
275
+ printCollectionStatus(collectors, options.timeout);
276
+ // Set timeout if explicitly provided
277
+ if (options.timeout) {
278
+ setTimeout(() => {
279
+ console.error(`\nTimeout reached (${options.timeout}s)`);
280
+ void context.stop();
281
+ }, options.timeout * 1000);
282
+ }
283
+ // Phase 5: Start preview writer
284
+ startPreviewWriter(context, options.compact ?? false);
285
+ // Optional: Log memory usage periodically (every 30s)
286
+ const memoryLogInterval = setInterval(() => {
287
+ const usage = process.memoryUsage();
288
+ const heapUsedMB = (usage.heapUsed / 1024 / 1024).toFixed(2);
289
+ const heapTotalMB = (usage.heapTotal / 1024 / 1024).toFixed(2);
290
+ const rssMB = (usage.rss / 1024 / 1024).toFixed(2);
291
+ console.error(`[PERF] Memory: Heap ${heapUsedMB}/${heapTotalMB} MB, RSS ${rssMB} MB`);
292
+ }, 30000);
293
+ // Store interval in context for cleanup
294
+ const originalCleanup = context.cleanup.bind(context);
295
+ context.cleanup = async () => {
296
+ clearInterval(memoryLogInterval);
297
+ await originalCleanup();
298
+ };
299
+ // Phase 6: Run session loop
300
+ await SessionLoop.run(session, target);
301
+ }
302
+ catch (error) {
303
+ // Show diagnostic information for Chrome launch failures
304
+ if (error instanceof ChromeLaunchError) {
305
+ reportLauncherFailure(error);
306
+ }
307
+ const errorOutput = OutputBuilder.buildError(error, context.startTime, context.target ?? undefined);
308
+ console.log(JSON.stringify(errorOutput, null, 2));
309
+ // Cleanup on error
310
+ await context.cleanup();
311
+ // Use semantic exit codes based on error type
312
+ const exitCode = getExitCodeForError(error);
313
+ process.exit(exitCode);
314
+ }
315
+ }
55
316
  //# sourceMappingURL=sessionController.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sessionController.js","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,2DAA2D;QAC3D,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC9E,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAEnE,wCAAwC;QACxC,MAAM,SAAS,GAAG,aAAa,EAAE,CAAC;QAElC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACvD,OAAO,CAAC,KAAK,CAAC,0EAA0E,CAAC,CAAC;YAC1F,OAAO,CAAC,CAAC;QACX,CAAC;QAED,uCAAuC;QACvC,OAAO,CAAC,KAAK,CAAC,gCAAgC,SAAS,MAAM,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,kDAAkD;YAClD,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAExC,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YAEpD,wCAAwC;YACxC,cAAc,EAAE,CAAC;YAEjB,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,yCAAyC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACrF,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;YAC9E,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxF,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"sessionController.js","sourceRoot":"","sources":["../../../src/cli/handlers/sessionController.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ import type { Command } from 'commander';
4
4
  */
5
5
  export type CommandRegistrar = (program: Command) => void;
6
6
  /**
7
- * Registry of all CLI commands with grouping
8
- * Order matters: groups organize commands in help output
7
+ * Registry of all CLI commands
8
+ * Order matters: start commands first (includes default), then others
9
9
  */
10
10
  export declare const commandRegistry: CommandRegistrar[];
11
11
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAazC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAW1D;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,gBAAgB,EA2B7C,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/cli/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAUzC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;AAE1D;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,gBAAgB,EAQ7C,CAAC"}