browser-debugger-cli 0.3.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (482) hide show
  1. package/README.md +182 -125
  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 +95 -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/cdp/protocol.d.ts +121 -0
  34. package/dist/cdp/protocol.d.ts.map +1 -0
  35. package/dist/cdp/protocol.js +215 -0
  36. package/dist/cdp/protocol.js.map +1 -0
  37. package/dist/cdp/schema.d.ts +159 -0
  38. package/dist/cdp/schema.d.ts.map +1 -0
  39. package/dist/cdp/schema.js +256 -0
  40. package/dist/cdp/schema.js.map +1 -0
  41. package/dist/cdp/types.d.ts +139 -0
  42. package/dist/cdp/types.d.ts.map +1 -0
  43. package/dist/cdp/types.js +7 -0
  44. package/dist/cdp/types.js.map +1 -0
  45. package/dist/commands/cdp.d.ts +10 -1
  46. package/dist/commands/cdp.d.ts.map +1 -1
  47. package/dist/commands/cdp.js +363 -26
  48. package/dist/commands/cdp.js.map +1 -1
  49. package/dist/commands/cleanup.d.ts.map +1 -1
  50. package/dist/commands/cleanup.js +15 -18
  51. package/dist/commands/cleanup.js.map +1 -1
  52. package/dist/commands/dom.d.ts.map +1 -1
  53. package/dist/commands/dom.js +14 -19
  54. package/dist/commands/dom.js.map +1 -1
  55. package/dist/commands/domEvalHelpers.d.ts +3 -16
  56. package/dist/commands/domEvalHelpers.d.ts.map +1 -1
  57. package/dist/commands/domEvalHelpers.js +56 -7
  58. package/dist/commands/domEvalHelpers.js.map +1 -1
  59. package/dist/commands/domOptionsBuilder.d.ts +32 -0
  60. package/dist/commands/domOptionsBuilder.d.ts.map +1 -1
  61. package/dist/commands/domOptionsBuilder.js +35 -0
  62. package/dist/commands/domOptionsBuilder.js.map +1 -1
  63. package/dist/commands/machineReadableHelp.d.ts +98 -0
  64. package/dist/commands/machineReadableHelp.d.ts.map +1 -0
  65. package/dist/commands/machineReadableHelp.js +137 -0
  66. package/dist/commands/machineReadableHelp.js.map +1 -0
  67. package/dist/commands/peek.d.ts.map +1 -1
  68. package/dist/commands/peek.js +12 -6
  69. package/dist/commands/peek.js.map +1 -1
  70. package/dist/commands/shared/CommandRunner.d.ts +2 -0
  71. package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
  72. package/dist/commands/shared/CommandRunner.js +15 -4
  73. package/dist/commands/shared/CommandRunner.js.map +1 -1
  74. package/dist/commands/shared/OutputBuilder.js +1 -1
  75. package/dist/commands/shared/OutputBuilder.js.map +1 -1
  76. package/dist/commands/shared/commonOptions.d.ts.map +1 -1
  77. package/dist/commands/shared/commonOptions.js +11 -5
  78. package/dist/commands/shared/commonOptions.js.map +1 -1
  79. package/dist/commands/shared/daemonSessionController.d.ts +2 -0
  80. package/dist/commands/shared/daemonSessionController.d.ts.map +1 -1
  81. package/dist/commands/shared/daemonSessionController.js +13 -16
  82. package/dist/commands/shared/daemonSessionController.js.map +1 -1
  83. package/dist/commands/shared/sessionController.js +1 -1
  84. package/dist/commands/shared/sessionController.js.map +1 -1
  85. package/dist/commands/start.d.ts.map +1 -1
  86. package/dist/commands/start.js +35 -11
  87. package/dist/commands/start.js.map +1 -1
  88. package/dist/commands/status.d.ts.map +1 -1
  89. package/dist/commands/status.js +74 -57
  90. package/dist/commands/status.js.map +1 -1
  91. package/dist/commands/stop.d.ts.map +1 -1
  92. package/dist/commands/stop.js +13 -27
  93. package/dist/commands/stop.js.map +1 -1
  94. package/dist/commands/tail.d.ts +11 -0
  95. package/dist/commands/tail.d.ts.map +1 -0
  96. package/dist/commands/tail.js +117 -0
  97. package/dist/commands/tail.js.map +1 -0
  98. package/dist/commands.d.ts.map +1 -1
  99. package/dist/commands.js +2 -0
  100. package/dist/commands.js.map +1 -1
  101. package/dist/connection/cdp.d.ts +46 -2
  102. package/dist/connection/cdp.d.ts.map +1 -1
  103. package/dist/connection/cdp.js +86 -7
  104. package/dist/connection/cdp.js.map +1 -1
  105. package/dist/{utils/chromeDiagnostics.d.ts → connection/diagnostics.d.ts} +1 -1
  106. package/dist/connection/diagnostics.d.ts.map +1 -0
  107. package/dist/{utils/chromeDiagnostics.js → connection/diagnostics.js} +1 -1
  108. package/dist/connection/diagnostics.js.map +1 -0
  109. package/dist/connection/domOperations.d.ts.map +1 -1
  110. package/dist/connection/domOperations.js +3 -1
  111. package/dist/connection/domOperations.js.map +1 -1
  112. package/dist/{utils → connection}/errors.d.ts +9 -17
  113. package/dist/connection/errors.d.ts.map +1 -0
  114. package/dist/{utils → connection}/errors.js +12 -17
  115. package/dist/connection/errors.js.map +1 -0
  116. package/dist/connection/handlers.d.ts +63 -0
  117. package/dist/connection/handlers.d.ts.map +1 -0
  118. package/dist/connection/handlers.js +64 -0
  119. package/dist/connection/handlers.js.map +1 -0
  120. package/dist/connection/launcher.d.ts +3 -20
  121. package/dist/connection/launcher.d.ts.map +1 -1
  122. package/dist/connection/launcher.js +141 -31
  123. package/dist/connection/launcher.js.map +1 -1
  124. package/dist/connection/pageReadiness.d.ts.map +1 -0
  125. package/dist/{utils → connection}/pageReadiness.js +30 -31
  126. package/dist/connection/pageReadiness.js.map +1 -0
  127. package/dist/connection/typed-cdp.d.ts +144 -0
  128. package/dist/connection/typed-cdp.d.ts.map +1 -0
  129. package/dist/connection/typed-cdp.js +120 -0
  130. package/dist/connection/typed-cdp.js.map +1 -0
  131. package/dist/constants.d.ts +20 -40
  132. package/dist/constants.d.ts.map +1 -1
  133. package/dist/constants.js +26 -40
  134. package/dist/constants.js.map +1 -1
  135. package/dist/daemon/ipcServer.d.ts +5 -7
  136. package/dist/daemon/ipcServer.d.ts.map +1 -1
  137. package/dist/daemon/ipcServer.js +178 -143
  138. package/dist/daemon/ipcServer.js.map +1 -1
  139. package/dist/daemon/launcher.js +1 -1
  140. package/dist/daemon/launcher.js.map +1 -1
  141. package/dist/daemon/server/SocketServer.d.ts +22 -0
  142. package/dist/daemon/server/SocketServer.d.ts.map +1 -0
  143. package/dist/daemon/server/SocketServer.js +67 -0
  144. package/dist/daemon/server/SocketServer.js.map +1 -0
  145. package/dist/daemon/server/WorkerManager.d.ts +36 -0
  146. package/dist/daemon/server/WorkerManager.d.ts.map +1 -0
  147. package/dist/daemon/server/WorkerManager.js +98 -0
  148. package/dist/daemon/server/WorkerManager.js.map +1 -0
  149. package/dist/daemon/startSession.d.ts +2 -0
  150. package/dist/daemon/startSession.d.ts.map +1 -1
  151. package/dist/daemon/startSession.js +4 -2
  152. package/dist/daemon/startSession.js.map +1 -1
  153. package/dist/daemon/worker/TelemetryStore.d.ts +18 -0
  154. package/dist/daemon/worker/TelemetryStore.d.ts.map +1 -0
  155. package/dist/daemon/worker/TelemetryStore.js +49 -0
  156. package/dist/daemon/worker/TelemetryStore.js.map +1 -0
  157. package/dist/daemon/worker/collectors.d.ts +8 -0
  158. package/dist/daemon/worker/collectors.d.ts.map +1 -0
  159. package/dist/daemon/worker/collectors.js +19 -0
  160. package/dist/daemon/worker/collectors.js.map +1 -0
  161. package/dist/daemon/worker/commandRegistry.d.ts +10 -0
  162. package/dist/daemon/worker/commandRegistry.d.ts.map +1 -0
  163. package/dist/daemon/worker/commandRegistry.js +289 -0
  164. package/dist/daemon/worker/commandRegistry.js.map +1 -0
  165. package/dist/daemon/worker/plugins.d.ts +21 -0
  166. package/dist/daemon/worker/plugins.d.ts.map +1 -0
  167. package/dist/daemon/worker/plugins.js +71 -0
  168. package/dist/daemon/worker/plugins.js.map +1 -0
  169. package/dist/daemon/worker/types.d.ts +13 -0
  170. package/dist/daemon/worker/types.d.ts.map +1 -0
  171. package/dist/daemon/worker/types.js +2 -0
  172. package/dist/daemon/worker/types.js.map +1 -0
  173. package/dist/daemon/worker.js +206 -529
  174. package/dist/daemon/worker.js.map +1 -1
  175. package/dist/index.js +18 -9
  176. package/dist/index.js.map +1 -1
  177. package/dist/ipc/__tests__/client.contract.test.js +2 -2
  178. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  179. package/dist/ipc/client.d.ts +3 -1
  180. package/dist/ipc/client.d.ts.map +1 -1
  181. package/dist/ipc/client.js +27 -14
  182. package/dist/ipc/client.js.map +1 -1
  183. package/dist/ipc/commands.d.ts +1 -0
  184. package/dist/ipc/commands.d.ts.map +1 -1
  185. package/dist/ipc/commands.js.map +1 -1
  186. package/dist/ipc/types.d.ts +2 -0
  187. package/dist/ipc/types.d.ts.map +1 -1
  188. package/dist/session/cleanup.d.ts.map +1 -1
  189. package/dist/session/cleanup.js +67 -65
  190. package/dist/session/cleanup.js.map +1 -1
  191. package/dist/session/fileOps.d.ts +25 -0
  192. package/dist/session/fileOps.d.ts.map +1 -0
  193. package/dist/session/fileOps.js +39 -0
  194. package/dist/session/fileOps.js.map +1 -0
  195. package/dist/session/metadata.js +2 -2
  196. package/dist/session/metadata.js.map +1 -1
  197. package/dist/session/paths.d.ts +2 -7
  198. package/dist/session/paths.d.ts.map +1 -1
  199. package/dist/session/paths.js +8 -8
  200. package/dist/session/paths.js.map +1 -1
  201. package/dist/session/queryCache.js +1 -1
  202. package/dist/session/queryCache.js.map +1 -1
  203. package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +1 -0
  204. package/dist/{utils → telemetry}/__tests__/filters.unit.test.js +1 -1
  205. package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -0
  206. package/dist/telemetry/__tests__/network.contract.test.js +124 -93
  207. package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
  208. package/dist/telemetry/console.d.ts +1 -1
  209. package/dist/telemetry/console.d.ts.map +1 -1
  210. package/dist/telemetry/console.js +8 -5
  211. package/dist/telemetry/console.js.map +1 -1
  212. package/dist/telemetry/dialogs.d.ts +27 -0
  213. package/dist/telemetry/dialogs.d.ts.map +1 -0
  214. package/dist/telemetry/dialogs.js +51 -0
  215. package/dist/telemetry/dialogs.js.map +1 -0
  216. package/dist/telemetry/dom.d.ts.map +1 -1
  217. package/dist/telemetry/dom.js +3 -1
  218. package/dist/telemetry/dom.js.map +1 -1
  219. package/dist/{utils → telemetry}/filters.d.ts +40 -0
  220. package/dist/telemetry/filters.d.ts.map +1 -0
  221. package/dist/{utils → telemetry}/filters.js +55 -1
  222. package/dist/telemetry/filters.js.map +1 -0
  223. package/dist/telemetry/navigation.d.ts +49 -0
  224. package/dist/telemetry/navigation.d.ts.map +1 -0
  225. package/dist/telemetry/navigation.js +69 -0
  226. package/dist/telemetry/navigation.js.map +1 -0
  227. package/dist/telemetry/network.d.ts +1 -0
  228. package/dist/telemetry/network.d.ts.map +1 -1
  229. package/dist/telemetry/network.js +23 -34
  230. package/dist/telemetry/network.js.map +1 -1
  231. package/dist/types.d.ts +2 -141
  232. package/dist/types.d.ts.map +1 -1
  233. package/dist/ui/{errors.d.ts → errors/CommandError.d.ts} +1 -1
  234. package/dist/ui/errors/CommandError.d.ts.map +1 -0
  235. package/dist/ui/{errors.js → errors/CommandError.js} +1 -1
  236. package/dist/ui/errors/CommandError.js.map +1 -0
  237. package/dist/ui/errors/index.d.ts +9 -0
  238. package/dist/ui/errors/index.d.ts.map +1 -0
  239. package/dist/ui/errors/index.js +12 -0
  240. package/dist/ui/errors/index.js.map +1 -0
  241. package/dist/ui/errors/utils.d.ts +24 -0
  242. package/dist/ui/errors/utils.d.ts.map +1 -0
  243. package/dist/ui/errors/utils.js +28 -0
  244. package/dist/ui/errors/utils.js.map +1 -0
  245. package/dist/ui/formatters/status.d.ts.map +1 -1
  246. package/dist/ui/formatters/status.js +1 -1
  247. package/dist/ui/formatters/status.js.map +1 -1
  248. package/dist/ui/logging/index.d.ts +7 -0
  249. package/dist/ui/logging/index.d.ts.map +1 -0
  250. package/dist/ui/logging/index.js +7 -0
  251. package/dist/ui/logging/index.js.map +1 -0
  252. package/dist/{utils → ui/logging}/logger.d.ts +1 -1
  253. package/dist/ui/logging/logger.d.ts.map +1 -0
  254. package/dist/ui/logging/logger.js.map +1 -0
  255. package/dist/ui/messages/chrome.d.ts +50 -1
  256. package/dist/ui/messages/chrome.d.ts.map +1 -1
  257. package/dist/ui/messages/chrome.js +77 -0
  258. package/dist/ui/messages/chrome.js.map +1 -1
  259. package/dist/ui/messages/commands.d.ts +1 -0
  260. package/dist/ui/messages/commands.d.ts.map +1 -1
  261. package/dist/ui/messages/commands.js +1 -0
  262. package/dist/ui/messages/commands.js.map +1 -1
  263. package/dist/ui/messages/errors.d.ts +30 -3
  264. package/dist/ui/messages/errors.d.ts.map +1 -1
  265. package/dist/ui/messages/errors.js +36 -8
  266. package/dist/ui/messages/errors.js.map +1 -1
  267. package/dist/ui/messages/preview.js +1 -1
  268. package/dist/ui/messages/preview.js.map +1 -1
  269. package/dist/ui/messages/session.d.ts.map +1 -1
  270. package/dist/ui/messages/session.js +22 -7
  271. package/dist/ui/messages/session.js.map +1 -1
  272. package/dist/ui/messages/validation.d.ts +22 -4
  273. package/dist/ui/messages/validation.d.ts.map +1 -1
  274. package/dist/ui/messages/validation.js +26 -5
  275. package/dist/ui/messages/validation.js.map +1 -1
  276. package/dist/utils/__tests__/session.contract.test.js +15 -1
  277. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  278. package/dist/utils/url.d.ts.map +1 -1
  279. package/dist/utils/url.js +10 -0
  280. package/dist/utils/url.js.map +1 -1
  281. package/package.json +3 -1
  282. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +0 -24
  283. package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
  284. package/dist/cli/commands/__tests__/cdp.contract.test.js +0 -467
  285. package/dist/cli/commands/__tests__/cdp.contract.test.js.map +0 -1
  286. package/dist/cli/commands/cdp.d.ts +0 -8
  287. package/dist/cli/commands/cdp.d.ts.map +0 -1
  288. package/dist/cli/commands/cdp.js +0 -45
  289. package/dist/cli/commands/cdp.js.map +0 -1
  290. package/dist/cli/commands/cleanup.d.ts +0 -8
  291. package/dist/cli/commands/cleanup.d.ts.map +0 -1
  292. package/dist/cli/commands/cleanup.js +0 -129
  293. package/dist/cli/commands/cleanup.js.map +0 -1
  294. package/dist/cli/commands/console.d.ts +0 -8
  295. package/dist/cli/commands/console.d.ts.map +0 -1
  296. package/dist/cli/commands/console.js +0 -97
  297. package/dist/cli/commands/console.js.map +0 -1
  298. package/dist/cli/commands/details.d.ts +0 -8
  299. package/dist/cli/commands/details.d.ts.map +0 -1
  300. package/dist/cli/commands/details.js +0 -68
  301. package/dist/cli/commands/details.js.map +0 -1
  302. package/dist/cli/commands/dom/helpers/domCache.d.ts +0 -36
  303. package/dist/cli/commands/dom/helpers/domCache.d.ts.map +0 -1
  304. package/dist/cli/commands/dom/helpers/domCache.js +0 -65
  305. package/dist/cli/commands/dom/helpers/domCache.js.map +0 -1
  306. package/dist/cli/commands/dom/helpers/domQuery.d.ts +0 -48
  307. package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +0 -1
  308. package/dist/cli/commands/dom/helpers/domQuery.js +0 -104
  309. package/dist/cli/commands/dom/helpers/domQuery.js.map +0 -1
  310. package/dist/cli/commands/dom/helpers/errorHandler.d.ts +0 -45
  311. package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +0 -1
  312. package/dist/cli/commands/dom/helpers/errorHandler.js +0 -71
  313. package/dist/cli/commands/dom/helpers/errorHandler.js.map +0 -1
  314. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +0 -52
  315. package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +0 -1
  316. package/dist/cli/commands/dom/helpers/evalHelpers.js +0 -75
  317. package/dist/cli/commands/dom/helpers/evalHelpers.js.map +0 -1
  318. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +0 -35
  319. package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +0 -1
  320. package/dist/cli/commands/dom/helpers/optionsBuilder.js +0 -51
  321. package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +0 -1
  322. package/dist/cli/commands/dom/helpers/selectorParser.d.ts +0 -20
  323. package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +0 -1
  324. package/dist/cli/commands/dom/helpers/selectorParser.js +0 -20
  325. package/dist/cli/commands/dom/helpers/selectorParser.js.map +0 -1
  326. package/dist/cli/commands/dom/index.d.ts +0 -8
  327. package/dist/cli/commands/dom/index.d.ts.map +0 -1
  328. package/dist/cli/commands/dom/index.js +0 -257
  329. package/dist/cli/commands/dom/index.js.map +0 -1
  330. package/dist/cli/commands/dom.d.ts +0 -8
  331. package/dist/cli/commands/dom.d.ts.map +0 -1
  332. package/dist/cli/commands/dom.js +0 -257
  333. package/dist/cli/commands/dom.js.map +0 -1
  334. package/dist/cli/commands/domErrorHandler.d.ts +0 -45
  335. package/dist/cli/commands/domErrorHandler.d.ts.map +0 -1
  336. package/dist/cli/commands/domErrorHandler.js +0 -71
  337. package/dist/cli/commands/domErrorHandler.js.map +0 -1
  338. package/dist/cli/commands/domEvalHelpers.d.ts +0 -52
  339. package/dist/cli/commands/domEvalHelpers.d.ts.map +0 -1
  340. package/dist/cli/commands/domEvalHelpers.js +0 -76
  341. package/dist/cli/commands/domEvalHelpers.js.map +0 -1
  342. package/dist/cli/commands/domOptionsBuilder.d.ts +0 -35
  343. package/dist/cli/commands/domOptionsBuilder.d.ts.map +0 -1
  344. package/dist/cli/commands/domOptionsBuilder.js +0 -51
  345. package/dist/cli/commands/domOptionsBuilder.js.map +0 -1
  346. package/dist/cli/commands/domSelectorParser.d.ts +0 -20
  347. package/dist/cli/commands/domSelectorParser.d.ts.map +0 -1
  348. package/dist/cli/commands/domSelectorParser.js +0 -20
  349. package/dist/cli/commands/domSelectorParser.js.map +0 -1
  350. package/dist/cli/commands/network.d.ts +0 -8
  351. package/dist/cli/commands/network.d.ts.map +0 -1
  352. package/dist/cli/commands/network.js +0 -43
  353. package/dist/cli/commands/network.js.map +0 -1
  354. package/dist/cli/commands/peek.d.ts +0 -8
  355. package/dist/cli/commands/peek.d.ts.map +0 -1
  356. package/dist/cli/commands/peek.js +0 -109
  357. package/dist/cli/commands/peek.js.map +0 -1
  358. package/dist/cli/commands/start.d.ts +0 -9
  359. package/dist/cli/commands/start.d.ts.map +0 -1
  360. package/dist/cli/commands/start.js +0 -95
  361. package/dist/cli/commands/start.js.map +0 -1
  362. package/dist/cli/commands/status.d.ts +0 -9
  363. package/dist/cli/commands/status.d.ts.map +0 -1
  364. package/dist/cli/commands/status.js +0 -87
  365. package/dist/cli/commands/status.js.map +0 -1
  366. package/dist/cli/commands/stop.d.ts +0 -8
  367. package/dist/cli/commands/stop.d.ts.map +0 -1
  368. package/dist/cli/commands/stop.js +0 -147
  369. package/dist/cli/commands/stop.js.map +0 -1
  370. package/dist/cli/formatters/detailsFormatter.d.ts +0 -10
  371. package/dist/cli/formatters/detailsFormatter.d.ts.map +0 -1
  372. package/dist/cli/formatters/detailsFormatter.js +0 -63
  373. package/dist/cli/formatters/detailsFormatter.js.map +0 -1
  374. package/dist/cli/formatters/previewFormatter.d.ts +0 -27
  375. package/dist/cli/formatters/previewFormatter.d.ts.map +0 -1
  376. package/dist/cli/formatters/previewFormatter.js +0 -160
  377. package/dist/cli/formatters/previewFormatter.js.map +0 -1
  378. package/dist/cli/formatters/statusFormatter.d.ts +0 -39
  379. package/dist/cli/formatters/statusFormatter.d.ts.map +0 -1
  380. package/dist/cli/formatters/statusFormatter.js +0 -153
  381. package/dist/cli/formatters/statusFormatter.js.map +0 -1
  382. package/dist/cli/handlers/CommandRunner.d.ts +0 -60
  383. package/dist/cli/handlers/CommandRunner.d.ts.map +0 -1
  384. package/dist/cli/handlers/CommandRunner.js +0 -81
  385. package/dist/cli/handlers/CommandRunner.js.map +0 -1
  386. package/dist/cli/handlers/OutputBuilder.d.ts +0 -60
  387. package/dist/cli/handlers/OutputBuilder.d.ts.map +0 -1
  388. package/dist/cli/handlers/OutputBuilder.js +0 -138
  389. package/dist/cli/handlers/OutputBuilder.js.map +0 -1
  390. package/dist/cli/handlers/commonOptions.d.ts +0 -54
  391. package/dist/cli/handlers/commonOptions.d.ts.map +0 -1
  392. package/dist/cli/handlers/commonOptions.js +0 -64
  393. package/dist/cli/handlers/commonOptions.js.map +0 -1
  394. package/dist/cli/handlers/daemonSessionController.d.ts +0 -23
  395. package/dist/cli/handlers/daemonSessionController.d.ts.map +0 -1
  396. package/dist/cli/handlers/daemonSessionController.js +0 -79
  397. package/dist/cli/handlers/daemonSessionController.js.map +0 -1
  398. package/dist/cli/handlers/landingPage.d.ts +0 -8
  399. package/dist/cli/handlers/landingPage.d.ts.map +0 -1
  400. package/dist/cli/handlers/landingPage.js +0 -8
  401. package/dist/cli/handlers/landingPage.js.map +0 -1
  402. package/dist/cli/handlers/sessionController.d.ts +0 -21
  403. package/dist/cli/handlers/sessionController.d.ts.map +0 -1
  404. package/dist/cli/handlers/sessionController.js +0 -55
  405. package/dist/cli/handlers/sessionController.js.map +0 -1
  406. package/dist/cli/registry.d.ts +0 -11
  407. package/dist/cli/registry.d.ts.map +0 -1
  408. package/dist/cli/registry.js +0 -46
  409. package/dist/cli/registry.js.map +0 -1
  410. package/dist/collectors/__tests__/network.contract.test.d.ts +0 -28
  411. package/dist/collectors/__tests__/network.contract.test.d.ts.map +0 -1
  412. package/dist/collectors/__tests__/network.contract.test.js +0 -540
  413. package/dist/collectors/__tests__/network.contract.test.js.map +0 -1
  414. package/dist/collectors/console.d.ts +0 -19
  415. package/dist/collectors/console.d.ts.map +0 -1
  416. package/dist/collectors/console.js +0 -87
  417. package/dist/collectors/console.js.map +0 -1
  418. package/dist/collectors/dom.d.ts +0 -21
  419. package/dist/collectors/dom.d.ts.map +0 -1
  420. package/dist/collectors/dom.js +0 -99
  421. package/dist/collectors/dom.js.map +0 -1
  422. package/dist/collectors/network.d.ts +0 -33
  423. package/dist/collectors/network.d.ts.map +0 -1
  424. package/dist/collectors/network.js +0 -191
  425. package/dist/collectors/network.js.map +0 -1
  426. package/dist/commandRegistry.d.ts +0 -11
  427. package/dist/commandRegistry.d.ts.map +0 -1
  428. package/dist/commandRegistry.js +0 -45
  429. package/dist/commandRegistry.js.map +0 -1
  430. package/dist/commands/domErrorHandler.d.ts +0 -45
  431. package/dist/commands/domErrorHandler.d.ts.map +0 -1
  432. package/dist/commands/domErrorHandler.js +0 -71
  433. package/dist/commands/domErrorHandler.js.map +0 -1
  434. package/dist/dom/cache.d.ts +0 -36
  435. package/dist/dom/cache.d.ts.map +0 -1
  436. package/dist/dom/cache.js +0 -65
  437. package/dist/dom/cache.js.map +0 -1
  438. package/dist/dom/index.d.ts +0 -9
  439. package/dist/dom/index.d.ts.map +0 -1
  440. package/dist/dom/index.js +0 -9
  441. package/dist/dom/index.js.map +0 -1
  442. package/dist/dom/query.d.ts +0 -48
  443. package/dist/dom/query.d.ts.map +0 -1
  444. package/dist/dom/query.js +0 -104
  445. package/dist/dom/query.js.map +0 -1
  446. package/dist/ui/errors.d.ts.map +0 -1
  447. package/dist/ui/errors.js.map +0 -1
  448. package/dist/ui/messages/index.d.ts +0 -12
  449. package/dist/ui/messages/index.d.ts.map +0 -1
  450. package/dist/ui/messages/index.js +0 -12
  451. package/dist/ui/messages/index.js.map +0 -1
  452. package/dist/utils/__tests__/filters.unit.test.d.ts.map +0 -1
  453. package/dist/utils/__tests__/filters.unit.test.js.map +0 -1
  454. package/dist/utils/cdpHandlers.d.ts +0 -31
  455. package/dist/utils/cdpHandlers.d.ts.map +0 -1
  456. package/dist/utils/cdpHandlers.js +0 -38
  457. package/dist/utils/cdpHandlers.js.map +0 -1
  458. package/dist/utils/chromeDiagnostics.d.ts.map +0 -1
  459. package/dist/utils/chromeDiagnostics.js.map +0 -1
  460. package/dist/utils/errors.d.ts.map +0 -1
  461. package/dist/utils/errors.js.map +0 -1
  462. package/dist/utils/filters.d.ts.map +0 -1
  463. package/dist/utils/filters.js.map +0 -1
  464. package/dist/utils/formatters/network.d.ts +0 -23
  465. package/dist/utils/formatters/network.d.ts.map +0 -1
  466. package/dist/utils/formatters/network.js +0 -35
  467. package/dist/utils/formatters/network.js.map +0 -1
  468. package/dist/utils/logger.d.ts.map +0 -1
  469. package/dist/utils/logger.js.map +0 -1
  470. package/dist/utils/pageReadiness.d.ts.map +0 -1
  471. package/dist/utils/pageReadiness.js.map +0 -1
  472. package/dist/utils/ui.d.ts +0 -36
  473. package/dist/utils/ui.d.ts.map +0 -1
  474. package/dist/utils/ui.js +0 -47
  475. package/dist/utils/ui.js.map +0 -1
  476. package/dist/utils/url/safeParseUrl.d.ts +0 -63
  477. package/dist/utils/url/safeParseUrl.d.ts.map +0 -1
  478. package/dist/utils/url/safeParseUrl.js +0 -84
  479. package/dist/utils/url/safeParseUrl.js.map +0 -1
  480. /package/dist/{utils → connection}/pageReadiness.d.ts +0 -0
  481. /package/dist/{utils → telemetry}/__tests__/filters.unit.test.d.ts +0 -0
  482. /package/dist/{utils → ui/logging}/logger.js +0 -0
@@ -1,95 +0,0 @@
1
- import { startSessionViaDaemon } from '../../cli/handlers/daemonSessionController.js';
2
- import { DEFAULT_DEBUG_PORT, PORT_OPTION_DESCRIPTION, TIMEOUT_OPTION_DESCRIPTION, USER_DATA_DIR_OPTION_DESCRIPTION, } from '../../constants.js';
3
- /**
4
- * Apply shared collector options to a command
5
- *
6
- * @param command - Commander.js Command instance to apply options to
7
- * @returns The modified Command instance with all collector options applied
8
- */
9
- function applyCollectorOptions(command) {
10
- return command
11
- .option('-p, --port <number>', PORT_OPTION_DESCRIPTION, DEFAULT_DEBUG_PORT)
12
- .option('-t, --timeout <seconds>', TIMEOUT_OPTION_DESCRIPTION)
13
- .option('-u, --user-data-dir <path>', USER_DATA_DIR_OPTION_DESCRIPTION)
14
- .option('-a, --all', 'Include all data (disable filtering of tracking/analytics)')
15
- .option('-m, --max-body-size <megabytes>', 'Maximum response body size in MB (default: 5MB)', '5')
16
- .option('--compact', 'Use compact JSON format (no indentation) for output files');
17
- }
18
- /**
19
- * Parse a string to integer, returning undefined if not provided
20
- * @param value - Optional string value to parse
21
- * @param fieldName - Name of the field being parsed (for error messages)
22
- * @returns Parsed integer or undefined if value was not provided
23
- * @throws Error if value is provided but not a valid integer
24
- */
25
- function parseOptionalInt(value, fieldName) {
26
- if (value === undefined) {
27
- return undefined;
28
- }
29
- const parsed = parseInt(value, 10);
30
- if (isNaN(parsed)) {
31
- throw new Error(`Invalid ${fieldName}: "${value}" is not a valid integer`);
32
- }
33
- return parsed;
34
- }
35
- /**
36
- * Transform CLI options into session options
37
- *
38
- * @param options - Parsed command-line options from Commander
39
- * @returns Session options object with parsed and normalized values
40
- */
41
- function buildSessionOptions(options) {
42
- const maxBodySizeMB = parseOptionalInt(options.maxBodySize, 'max-body-size');
43
- return {
44
- port: parseInt(options.port, 10),
45
- timeout: parseOptionalInt(options.timeout, 'timeout'),
46
- userDataDir: options.userDataDir,
47
- includeAll: options.all ?? false,
48
- maxBodySize: maxBodySizeMB !== undefined ? maxBodySizeMB * 1024 * 1024 : undefined,
49
- compact: options.compact ?? false,
50
- };
51
- }
52
- /**
53
- * Common action handler for collector commands
54
- *
55
- * @param url - Target URL to collect telemetry from
56
- * @param options - Parsed command-line options from Commander
57
- * @returns Promise that resolves when session completes or is stopped
58
- */
59
- async function collectorAction(url, options) {
60
- const sessionOptions = buildSessionOptions(options);
61
- // Always collect all 3 types (dom, network, console)
62
- const collectors = ['dom', 'network', 'console'];
63
- // Dispatch to daemon via IPC instead of running in-process
64
- await startSessionViaDaemon(url, sessionOptions, collectors);
65
- }
66
- /**
67
- * Register the start command
68
- *
69
- * @param program - Commander.js Command instance to register command on
70
- * @returns void
71
- */
72
- export function registerStartCommands(program) {
73
- // Default command: always collects all 3 types (dom, network, console)
74
- applyCollectorOptions(program.argument('[url]', 'Target URL (example.com or localhost:3000)')).action(async (url, options) => {
75
- // Show friendly help if no URL provided
76
- if (!url) {
77
- console.error('');
78
- console.error('Start a new session by providing a URL:');
79
- console.error('');
80
- console.error(' bdg example.com');
81
- console.error(' bdg localhost:3000');
82
- console.error(' bdg https://github.com');
83
- console.error('');
84
- console.error('Or manage existing session:');
85
- console.error('');
86
- console.error(' bdg status Check session state');
87
- console.error(' bdg stop End session');
88
- console.error(' bdg --help Show all commands');
89
- console.error('');
90
- process.exit(0);
91
- }
92
- await collectorAction(url, options);
93
- });
94
- }
95
- //# sourceMappingURL=start.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { Command } from 'commander';
2
- /**
3
- * Register status command
4
- *
5
- * @param program - Commander.js Command instance to register commands on
6
- * @returns void
7
- */
8
- export declare function registerStatusCommand(program: Command): void;
9
- //# sourceMappingURL=status.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyBzC;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoF5D"}
@@ -1,87 +0,0 @@
1
- import { getStatus } from '../../ipc/client.js';
2
- import { cleanupStaleDaemonPid } from '../../session/cleanup.js';
3
- import { formatSessionStatus, formatStatusAsJson, formatNoSessionMessage, } from '../../ui/formatters/status.js';
4
- import { daemonNotRunningWithCleanup } from '../../ui/messages/commands.js';
5
- import { getErrorMessage } from '../../utils/errors.js';
6
- import { EXIT_CODES } from '../../utils/exitCodes.js';
7
- import { VERSION } from '../../utils/version.js';
8
- /**
9
- * Register status command
10
- *
11
- * @param program - Commander.js Command instance to register commands on
12
- * @returns void
13
- */
14
- export function registerStatusCommand(program) {
15
- program
16
- .command('status')
17
- .description('Show active session status and collection statistics')
18
- .option('-j, --json', 'Output as JSON')
19
- .option('-v, --verbose', 'Show detailed Chrome diagnostics')
20
- .action(async (options) => {
21
- try {
22
- // Request status from daemon via IPC
23
- const response = await getStatus();
24
- // Handle IPC error response
25
- if (response.status === 'error') {
26
- console.error(`Daemon error: ${response.error ?? 'Unknown error'}`);
27
- process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
28
- }
29
- // Extract data from response
30
- const { data } = response;
31
- if (!data) {
32
- console.error('Invalid response from daemon: missing data');
33
- process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
34
- }
35
- // Check if there's an active session
36
- if (!data.sessionPid || !data.sessionMetadata) {
37
- if (options.json) {
38
- console.log(JSON.stringify({ version: VERSION, active: false }, null, 2));
39
- }
40
- else {
41
- console.error(formatNoSessionMessage());
42
- }
43
- process.exit(EXIT_CODES.SUCCESS);
44
- }
45
- // Convert IPC metadata to SessionMetadata format
46
- const metadata = {
47
- bdgPid: data.sessionMetadata.bdgPid,
48
- chromePid: data.sessionMetadata.chromePid,
49
- startTime: data.sessionMetadata.startTime,
50
- port: data.sessionMetadata.port,
51
- targetId: data.sessionMetadata.targetId,
52
- webSocketDebuggerUrl: data.sessionMetadata.webSocketDebuggerUrl,
53
- activeCollectors: data.sessionMetadata.activeCollectors,
54
- };
55
- if (options.json) {
56
- // JSON output - include activity and page state
57
- const jsonOutput = formatStatusAsJson(metadata, data.sessionPid);
58
- // Merge in activity data if available
59
- if (data.activity) {
60
- jsonOutput.activity = data.activity;
61
- }
62
- if (data.pageState) {
63
- jsonOutput.pageState = data.pageState;
64
- }
65
- console.log(JSON.stringify(jsonOutput, null, 2));
66
- }
67
- else {
68
- // Human-readable output - pass activity and page state
69
- console.log(formatSessionStatus(metadata, data.sessionPid, data.activity, data.pageState, options.verbose ?? false));
70
- }
71
- process.exit(EXIT_CODES.SUCCESS);
72
- }
73
- catch (error) {
74
- // Handle connection errors (daemon not running)
75
- const errorMessage = getErrorMessage(error);
76
- if (errorMessage.includes('ENOENT') || errorMessage.includes('ECONNREFUSED')) {
77
- // P0 Fix #2: Auto-cleanup stale daemon PID if it exists
78
- const cleaned = cleanupStaleDaemonPid();
79
- console.error(daemonNotRunningWithCleanup(cleaned));
80
- process.exit(EXIT_CODES.RESOURCE_NOT_FOUND);
81
- }
82
- console.error(`Error checking status: ${errorMessage}`);
83
- process.exit(EXIT_CODES.UNHANDLED_EXCEPTION);
84
- }
85
- });
86
- }
87
- //# sourceMappingURL=status.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { Command } from 'commander';
2
- /**
3
- * Register stop command
4
- *
5
- * @param program - Commander.js Command instance to register commands on
6
- */
7
- export declare function registerStopCommand(program: Command): void;
8
- //# sourceMappingURL=stop.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stop.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/stop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAsFzC;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8F1D"}
@@ -1,147 +0,0 @@
1
- import { runCommand } from '../../cli/handlers/CommandRunner.js';
2
- import { jsonOption } from '../../cli/handlers/commonOptions.js';
3
- import { stopSession } from '../../ipc/client.js';
4
- import { IPCErrorCode } from '../../ipc/types.js';
5
- import { clearChromePid } from '../../session/chrome.js';
6
- import { killChromeProcess } from '../../session/process.js';
7
- import { sessionStoppedMessage, chromeKilledMessage, warningMessage, } from '../../ui/messages/commands.js';
8
- import { getErrorMessage } from '../../utils/errors.js';
9
- import { EXIT_CODES } from '../../utils/exitCodes.js';
10
- /**
11
- * Format stop result for human-readable output.
12
- *
13
- * @param data - Stop result data
14
- */
15
- function formatStop(data) {
16
- if (data.stopped.bdg) {
17
- console.error(sessionStoppedMessage());
18
- }
19
- if (data.stopped.chrome) {
20
- console.error(chromeKilledMessage());
21
- }
22
- if (data.warnings && data.warnings.length > 0) {
23
- data.warnings.forEach((warning) => {
24
- console.error(warningMessage(warning));
25
- });
26
- }
27
- }
28
- /**
29
- * Map daemon error codes to appropriate exit codes.
30
- *
31
- * @param errorCode - IPC error code from daemon response
32
- * @returns Semantic exit code
33
- */
34
- function getExitCodeForDaemonError(errorCode) {
35
- switch (errorCode) {
36
- case IPCErrorCode.NO_SESSION:
37
- return EXIT_CODES.RESOURCE_NOT_FOUND;
38
- case IPCErrorCode.SESSION_KILL_FAILED:
39
- return EXIT_CODES.UNHANDLED_EXCEPTION;
40
- case IPCErrorCode.DAEMON_ERROR:
41
- return EXIT_CODES.UNHANDLED_EXCEPTION;
42
- case IPCErrorCode.SESSION_ALREADY_RUNNING:
43
- return EXIT_CODES.UNHANDLED_EXCEPTION;
44
- case IPCErrorCode.WORKER_START_FAILED:
45
- return EXIT_CODES.UNHANDLED_EXCEPTION;
46
- case IPCErrorCode.CHROME_LAUNCH_FAILED:
47
- return EXIT_CODES.UNHANDLED_EXCEPTION;
48
- case IPCErrorCode.CDP_TIMEOUT:
49
- return EXIT_CODES.UNHANDLED_EXCEPTION;
50
- case undefined:
51
- return EXIT_CODES.UNHANDLED_EXCEPTION;
52
- }
53
- }
54
- /**
55
- * Register stop command
56
- *
57
- * @param program - Commander.js Command instance to register commands on
58
- */
59
- export function registerStopCommand(program) {
60
- program
61
- .command('stop')
62
- .description('Stop all active sessions and free ports (does not capture output)')
63
- .option('--kill-chrome', 'Also kill Chrome browser')
64
- .addOption(jsonOption)
65
- .action(async (options) => {
66
- await runCommand(async (opts) => {
67
- try {
68
- // Try to stop session via IPC (daemon)
69
- const response = await stopSession();
70
- if (response.status === 'ok') {
71
- // Session stopped successfully via daemon
72
- let chromeStopped = false;
73
- const warnings = [];
74
- // Handle Chrome if requested (daemon captured Chrome PID before cleanup)
75
- if (opts.killChrome) {
76
- const chromePid = response.chromePid;
77
- if (chromePid) {
78
- try {
79
- killChromeProcess(chromePid, 'SIGTERM');
80
- chromeStopped = true;
81
- console.error(chromeKilledMessage(chromePid));
82
- clearChromePid();
83
- }
84
- catch (chromeError) {
85
- const errorMessage = chromeError instanceof Error ? chromeError.message : String(chromeError);
86
- warnings.push(`Could not kill Chrome: ${errorMessage}`);
87
- }
88
- }
89
- else {
90
- warnings.push('Chrome PID not found (Chrome was not launched by bdg)');
91
- }
92
- }
93
- return {
94
- success: true,
95
- data: {
96
- stopped: { bdg: true, chrome: chromeStopped },
97
- message: response.message ?? 'Session stopped successfully',
98
- ...(warnings.length > 0 && { warnings }),
99
- },
100
- };
101
- }
102
- else {
103
- // Daemon returned error
104
- // Special case: NO_SESSION is not really an error - it's a success (desired state achieved)
105
- if (response.errorCode === IPCErrorCode.NO_SESSION) {
106
- return {
107
- success: true,
108
- data: {
109
- stopped: { bdg: false, chrome: false },
110
- message: response.message ?? 'No active session found',
111
- },
112
- };
113
- }
114
- // Other errors are actual failures
115
- const exitCode = getExitCodeForDaemonError(response.errorCode);
116
- return {
117
- success: false,
118
- error: response.message ?? 'Failed to stop session',
119
- exitCode,
120
- };
121
- }
122
- }
123
- catch (error) {
124
- // IPC transport failure (ENOENT, ECONNREFUSED, timeout, etc.)
125
- const errorMessage = getErrorMessage(error);
126
- // Check if it's a connection error (daemon not running)
127
- if (errorMessage.includes('ENOENT') || errorMessage.includes('ECONNREFUSED')) {
128
- return {
129
- success: false,
130
- error: 'Daemon not running',
131
- exitCode: EXIT_CODES.RESOURCE_NOT_FOUND,
132
- errorContext: {
133
- suggestion: 'Start a session first with: bdg <url>',
134
- },
135
- };
136
- }
137
- // Other errors (timeout, parse failures, etc.)
138
- return {
139
- success: false,
140
- error: `Stop session failed: ${errorMessage}`,
141
- exitCode: EXIT_CODES.UNHANDLED_EXCEPTION,
142
- };
143
- }
144
- }, options, formatStop);
145
- });
146
- }
147
- //# sourceMappingURL=stop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stop.js","sourceRoot":"","sources":["../../../src/cli/commands/stop.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { NetworkRequest, ConsoleMessage } from '../../types';
2
- /**
3
- * Format network request details for human-readable output
4
- */
5
- export declare function formatNetworkDetails(request: NetworkRequest): string;
6
- /**
7
- * Format console message details for human-readable output
8
- */
9
- export declare function formatConsoleDetails(message: ConsoleMessage): string;
10
- //# sourceMappingURL=detailsFormatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detailsFormatter.d.ts","sourceRoot":"","sources":["../../../src/cli/formatters/detailsFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9D;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CA4CpE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAmBpE"}
@@ -1,63 +0,0 @@
1
- /**
2
- * Format network request details for human-readable output
3
- */
4
- export function formatNetworkDetails(request) {
5
- const lines = [];
6
- lines.push('Network Request Details');
7
- lines.push('━'.repeat(70));
8
- lines.push(`Request ID: ${request.requestId}`);
9
- lines.push(`URL: ${request.url}`);
10
- lines.push(`Method: ${request.method}`);
11
- lines.push(`Status: ${request.status ?? 'pending'}`);
12
- lines.push(`MIME Type: ${request.mimeType ?? 'N/A'}`);
13
- lines.push('');
14
- if (request.requestHeaders) {
15
- lines.push('Request Headers:');
16
- lines.push('━'.repeat(70));
17
- Object.entries(request.requestHeaders).forEach(([key, value]) => {
18
- lines.push(` ${key}: ${value}`);
19
- });
20
- lines.push('');
21
- }
22
- if (request.requestBody) {
23
- lines.push('Request Body:');
24
- lines.push('━'.repeat(70));
25
- lines.push(request.requestBody);
26
- lines.push('');
27
- }
28
- if (request.responseHeaders) {
29
- lines.push('Response Headers:');
30
- lines.push('━'.repeat(70));
31
- Object.entries(request.responseHeaders).forEach(([key, value]) => {
32
- lines.push(` ${key}: ${value}`);
33
- });
34
- lines.push('');
35
- }
36
- if (request.responseBody) {
37
- lines.push('Response Body:');
38
- lines.push('━'.repeat(70));
39
- lines.push(request.responseBody);
40
- }
41
- return lines.join('\n');
42
- }
43
- /**
44
- * Format console message details for human-readable output
45
- */
46
- export function formatConsoleDetails(message) {
47
- const lines = [];
48
- lines.push('Console Message Details');
49
- lines.push('━'.repeat(70));
50
- lines.push(`Type: ${message.type}`);
51
- lines.push(`Timestamp: ${new Date(message.timestamp).toISOString()}`);
52
- lines.push(`Text: ${message.text}`);
53
- lines.push('');
54
- if (message.args && message.args.length > 0) {
55
- lines.push('Arguments:');
56
- lines.push('━'.repeat(70));
57
- message.args.forEach((arg, idx) => {
58
- lines.push(` [${idx}]: ${JSON.stringify(arg, null, 2)}`);
59
- });
60
- }
61
- return lines.join('\n');
62
- }
63
- //# sourceMappingURL=detailsFormatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detailsFormatter.js","sourceRoot":"","sources":["../../../src/cli/formatters/detailsFormatter.ts"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- import type { BdgOutput } from '../../types';
2
- /**
3
- * Flags that shape how preview output is rendered for `bdg peek`.
4
- */
5
- export interface PreviewOptions {
6
- /** Emit raw JSON instead of formatted text. */
7
- json?: boolean;
8
- /** Limit output to network requests (ignores console data). */
9
- network?: boolean;
10
- /** Limit output to console messages (ignores network data). */
11
- console?: boolean;
12
- /** Number of recent entries to include (parsed as integer). */
13
- last: string;
14
- /** Use the expanded, human-friendly layout. */
15
- verbose?: boolean;
16
- /** Stream updates until interrupted (tail-like behaviour). */
17
- follow?: boolean;
18
- }
19
- /**
20
- * Format preview output (peek command)
21
- */
22
- export declare function formatPreview(output: BdgOutput, options: PreviewOptions): string;
23
- /**
24
- * Format "no preview data" message
25
- */
26
- export declare function formatNoPreviewDataMessage(): string;
27
- //# sourceMappingURL=previewFormatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"previewFormatter.d.ts","sourceRoot":"","sources":["../../../src/cli/formatters/previewFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGzC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CAMhF;AAgKD;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAMnD"}
@@ -1,160 +0,0 @@
1
- import { truncateUrl, truncateText } from '../../ui/formatting.js';
2
- /**
3
- * Format preview output (peek command)
4
- */
5
- export function formatPreview(output, options) {
6
- if (options.json) {
7
- return formatPreviewAsJson(output, options);
8
- }
9
- return formatPreviewHumanReadable(output, options);
10
- }
11
- /**
12
- * Format preview as JSON
13
- *
14
- * Returns the output wrapped in a preview object to maintain the
15
- * IPC response structure (.preview.data path for JSON consumers).
16
- */
17
- function formatPreviewAsJson(output, options) {
18
- const jsonOutput = {
19
- ...output,
20
- };
21
- // Apply filters
22
- if (options.network) {
23
- delete jsonOutput.data.console;
24
- }
25
- if (options.console) {
26
- delete jsonOutput.data.network;
27
- }
28
- // Apply --last limit
29
- const lastCount = parseInt(options.last);
30
- if (jsonOutput.data.network && jsonOutput.data.network.length > lastCount) {
31
- jsonOutput.data.network = jsonOutput.data.network.slice(-lastCount);
32
- }
33
- if (jsonOutput.data.console && jsonOutput.data.console.length > lastCount) {
34
- jsonOutput.data.console = jsonOutput.data.console.slice(-lastCount);
35
- }
36
- // Wrap in preview object to maintain .preview.data path for JSON consumers
37
- return JSON.stringify({ preview: jsonOutput }, null, 2);
38
- }
39
- /**
40
- * Format preview as human-readable output
41
- */
42
- function formatPreviewHumanReadable(output, options) {
43
- // Use verbose format if requested, otherwise use compact
44
- if (options.verbose) {
45
- return formatPreviewVerbose(output, options);
46
- }
47
- return formatPreviewCompact(output, options);
48
- }
49
- /**
50
- * Format preview in compact format (default)
51
- * Token-efficient output optimized for AI agents
52
- */
53
- function formatPreviewCompact(output, options) {
54
- const lines = [];
55
- // Simple header (no Unicode box drawing)
56
- lines.push(`PREVIEW | Duration: ${Math.floor(output.duration / 1000)}s | Updated: ${output.timestamp}`);
57
- lines.push('');
58
- const lastCount = parseInt(options.last);
59
- // Show network requests (compact)
60
- if (!options.console && output.data.network) {
61
- const requests = output.data.network.slice(-lastCount);
62
- lines.push(`NETWORK (${requests.length}/${output.data.network.length}):`);
63
- if (requests.length === 0) {
64
- lines.push(' (none)');
65
- }
66
- else {
67
- requests.forEach((req) => {
68
- const status = req.status ?? 'pending';
69
- const url = truncateUrl(req.url, 50);
70
- lines.push(` ${status} ${req.method} ${url} [${req.requestId}]`);
71
- });
72
- }
73
- lines.push('');
74
- }
75
- // Show console messages (compact)
76
- if (!options.network && output.data.console) {
77
- const messages = output.data.console.slice(-lastCount);
78
- lines.push(`CONSOLE (${messages.length}/${output.data.console.length}):`);
79
- if (messages.length === 0) {
80
- lines.push(' (none)');
81
- }
82
- else {
83
- messages.forEach((msg) => {
84
- const prefix = msg.type.toUpperCase().padEnd(5);
85
- const text = truncateText(msg.text, 2);
86
- lines.push(` ${prefix} ${text}`);
87
- });
88
- }
89
- lines.push('');
90
- }
91
- // Minimal suggestions
92
- lines.push('Tip: bdg stop | bdg peek --last 50 | bdg peek --verbose');
93
- return lines.join('\n');
94
- }
95
- /**
96
- * Format preview in verbose format (opt-in with --verbose)
97
- * Original human-friendly output with Unicode formatting
98
- */
99
- function formatPreviewVerbose(output, options) {
100
- const lines = [];
101
- lines.push('Live Preview (Partial Data)');
102
- lines.push('━'.repeat(50));
103
- lines.push(`Duration: ${Math.floor(output.duration / 1000)}s`);
104
- lines.push(`Last updated: ${output.timestamp}`);
105
- lines.push('');
106
- const lastCount = parseInt(options.last);
107
- // Show network requests
108
- if (!options.console && output.data.network) {
109
- const requests = output.data.network.slice(-lastCount);
110
- lines.push(`Network Requests (last ${requests.length} of ${output.data.network.length})`);
111
- lines.push('━'.repeat(50));
112
- if (requests.length === 0) {
113
- lines.push('No network requests yet');
114
- }
115
- else {
116
- requests.forEach((req) => {
117
- const statusColor = req.status && req.status >= 400 ? 'ERR' : 'OK';
118
- const status = req.status ?? 'pending';
119
- lines.push(`${statusColor} ${status} ${req.method} ${req.url}`);
120
- if (req.mimeType) {
121
- lines.push(` Type: ${req.mimeType}`);
122
- }
123
- lines.push(` ID: ${req.requestId} (use 'bdg details network ${req.requestId}' for full details)`);
124
- });
125
- }
126
- lines.push('');
127
- }
128
- // Show console messages
129
- if (!options.network && output.data.console) {
130
- const messages = output.data.console.slice(-lastCount);
131
- lines.push(`Console Messages (last ${messages.length} of ${output.data.console.length})`);
132
- lines.push('━'.repeat(50));
133
- if (messages.length === 0) {
134
- lines.push('No console messages yet');
135
- }
136
- else {
137
- messages.forEach((msg) => {
138
- const icon = msg.type === 'error' ? 'ERR' : msg.type === 'warning' ? 'WARN' : 'INFO';
139
- lines.push(`${icon} [${msg.type}] ${msg.text}`);
140
- });
141
- }
142
- lines.push('');
143
- }
144
- lines.push('Commands:');
145
- lines.push(' Stop session: bdg stop');
146
- lines.push(' Full preview: bdg peek --last 50');
147
- lines.push(' Watch live: bdg peek --follow');
148
- return lines.join('\n');
149
- }
150
- /**
151
- * Format "no preview data" message
152
- */
153
- export function formatNoPreviewDataMessage() {
154
- return `Error: No active session found
155
- No preview data available
156
-
157
- Start a session with: bdg <url>
158
- Check session status: bdg status`;
159
- }
160
- //# sourceMappingURL=previewFormatter.js.map