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.
- package/README.md +182 -125
- package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +8 -0
- package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +1 -0
- package/dist/__tests__/smoke/error-handling.smoke.test.js +95 -0
- package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -0
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +8 -0
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +1 -0
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +109 -0
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -0
- package/dist/__testutils__/commandRunner.d.ts +45 -0
- package/dist/__testutils__/commandRunner.d.ts.map +1 -0
- package/dist/__testutils__/commandRunner.js +108 -0
- package/dist/__testutils__/commandRunner.js.map +1 -0
- package/dist/__testutils__/daemonHelpers.d.ts +81 -0
- package/dist/__testutils__/daemonHelpers.d.ts.map +1 -0
- package/dist/__testutils__/daemonHelpers.js +206 -0
- package/dist/__testutils__/daemonHelpers.js.map +1 -0
- package/dist/__testutils__/index.d.ts +1 -0
- package/dist/__testutils__/index.d.ts.map +1 -1
- package/dist/__testutils__/index.js +1 -0
- package/dist/__testutils__/index.js.map +1 -1
- package/dist/__testutils__/testCleanup.d.ts +45 -0
- package/dist/__testutils__/testCleanup.d.ts.map +1 -0
- package/dist/__testutils__/testCleanup.js +87 -0
- package/dist/__testutils__/testCleanup.js.map +1 -0
- package/dist/__testutils__/testHome.d.ts +26 -0
- package/dist/__testutils__/testHome.d.ts.map +1 -0
- package/dist/__testutils__/testHome.js +57 -0
- package/dist/__testutils__/testHome.js.map +1 -0
- package/dist/__testutils__/testProcess.d.ts.map +1 -1
- package/dist/__testutils__/testProcess.js +11 -3
- package/dist/__testutils__/testProcess.js.map +1 -1
- package/dist/cdp/protocol.d.ts +121 -0
- package/dist/cdp/protocol.d.ts.map +1 -0
- package/dist/cdp/protocol.js +215 -0
- package/dist/cdp/protocol.js.map +1 -0
- package/dist/cdp/schema.d.ts +159 -0
- package/dist/cdp/schema.d.ts.map +1 -0
- package/dist/cdp/schema.js +256 -0
- package/dist/cdp/schema.js.map +1 -0
- package/dist/cdp/types.d.ts +139 -0
- package/dist/cdp/types.d.ts.map +1 -0
- package/dist/cdp/types.js +7 -0
- package/dist/cdp/types.js.map +1 -0
- package/dist/commands/cdp.d.ts +10 -1
- package/dist/commands/cdp.d.ts.map +1 -1
- package/dist/commands/cdp.js +363 -26
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +15 -18
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/dom.d.ts.map +1 -1
- package/dist/commands/dom.js +14 -19
- package/dist/commands/dom.js.map +1 -1
- package/dist/commands/domEvalHelpers.d.ts +3 -16
- package/dist/commands/domEvalHelpers.d.ts.map +1 -1
- package/dist/commands/domEvalHelpers.js +56 -7
- package/dist/commands/domEvalHelpers.js.map +1 -1
- package/dist/commands/domOptionsBuilder.d.ts +32 -0
- package/dist/commands/domOptionsBuilder.d.ts.map +1 -1
- package/dist/commands/domOptionsBuilder.js +35 -0
- package/dist/commands/domOptionsBuilder.js.map +1 -1
- package/dist/commands/machineReadableHelp.d.ts +98 -0
- package/dist/commands/machineReadableHelp.d.ts.map +1 -0
- package/dist/commands/machineReadableHelp.js +137 -0
- package/dist/commands/machineReadableHelp.js.map +1 -0
- package/dist/commands/peek.d.ts.map +1 -1
- package/dist/commands/peek.js +12 -6
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.d.ts +2 -0
- package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
- package/dist/commands/shared/CommandRunner.js +15 -4
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/OutputBuilder.js +1 -1
- package/dist/commands/shared/OutputBuilder.js.map +1 -1
- package/dist/commands/shared/commonOptions.d.ts.map +1 -1
- package/dist/commands/shared/commonOptions.js +11 -5
- package/dist/commands/shared/commonOptions.js.map +1 -1
- package/dist/commands/shared/daemonSessionController.d.ts +2 -0
- package/dist/commands/shared/daemonSessionController.d.ts.map +1 -1
- package/dist/commands/shared/daemonSessionController.js +13 -16
- package/dist/commands/shared/daemonSessionController.js.map +1 -1
- package/dist/commands/shared/sessionController.js +1 -1
- package/dist/commands/shared/sessionController.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +35 -11
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +74 -57
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +13 -27
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts +11 -0
- package/dist/commands/tail.d.ts.map +1 -0
- package/dist/commands/tail.js +117 -0
- package/dist/commands/tail.js.map +1 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +2 -0
- package/dist/commands.js.map +1 -1
- package/dist/connection/cdp.d.ts +46 -2
- package/dist/connection/cdp.d.ts.map +1 -1
- package/dist/connection/cdp.js +86 -7
- package/dist/connection/cdp.js.map +1 -1
- package/dist/{utils/chromeDiagnostics.d.ts → connection/diagnostics.d.ts} +1 -1
- package/dist/connection/diagnostics.d.ts.map +1 -0
- package/dist/{utils/chromeDiagnostics.js → connection/diagnostics.js} +1 -1
- package/dist/connection/diagnostics.js.map +1 -0
- package/dist/connection/domOperations.d.ts.map +1 -1
- package/dist/connection/domOperations.js +3 -1
- package/dist/connection/domOperations.js.map +1 -1
- package/dist/{utils → connection}/errors.d.ts +9 -17
- package/dist/connection/errors.d.ts.map +1 -0
- package/dist/{utils → connection}/errors.js +12 -17
- package/dist/connection/errors.js.map +1 -0
- package/dist/connection/handlers.d.ts +63 -0
- package/dist/connection/handlers.d.ts.map +1 -0
- package/dist/connection/handlers.js +64 -0
- package/dist/connection/handlers.js.map +1 -0
- package/dist/connection/launcher.d.ts +3 -20
- package/dist/connection/launcher.d.ts.map +1 -1
- package/dist/connection/launcher.js +141 -31
- package/dist/connection/launcher.js.map +1 -1
- package/dist/connection/pageReadiness.d.ts.map +1 -0
- package/dist/{utils → connection}/pageReadiness.js +30 -31
- package/dist/connection/pageReadiness.js.map +1 -0
- package/dist/connection/typed-cdp.d.ts +144 -0
- package/dist/connection/typed-cdp.d.ts.map +1 -0
- package/dist/connection/typed-cdp.js +120 -0
- package/dist/connection/typed-cdp.js.map +1 -0
- package/dist/constants.d.ts +20 -40
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +26 -40
- package/dist/constants.js.map +1 -1
- package/dist/daemon/ipcServer.d.ts +5 -7
- package/dist/daemon/ipcServer.d.ts.map +1 -1
- package/dist/daemon/ipcServer.js +178 -143
- package/dist/daemon/ipcServer.js.map +1 -1
- package/dist/daemon/launcher.js +1 -1
- package/dist/daemon/launcher.js.map +1 -1
- package/dist/daemon/server/SocketServer.d.ts +22 -0
- package/dist/daemon/server/SocketServer.d.ts.map +1 -0
- package/dist/daemon/server/SocketServer.js +67 -0
- package/dist/daemon/server/SocketServer.js.map +1 -0
- package/dist/daemon/server/WorkerManager.d.ts +36 -0
- package/dist/daemon/server/WorkerManager.d.ts.map +1 -0
- package/dist/daemon/server/WorkerManager.js +98 -0
- package/dist/daemon/server/WorkerManager.js.map +1 -0
- package/dist/daemon/startSession.d.ts +2 -0
- package/dist/daemon/startSession.d.ts.map +1 -1
- package/dist/daemon/startSession.js +4 -2
- package/dist/daemon/startSession.js.map +1 -1
- package/dist/daemon/worker/TelemetryStore.d.ts +18 -0
- package/dist/daemon/worker/TelemetryStore.d.ts.map +1 -0
- package/dist/daemon/worker/TelemetryStore.js +49 -0
- package/dist/daemon/worker/TelemetryStore.js.map +1 -0
- package/dist/daemon/worker/collectors.d.ts +8 -0
- package/dist/daemon/worker/collectors.d.ts.map +1 -0
- package/dist/daemon/worker/collectors.js +19 -0
- package/dist/daemon/worker/collectors.js.map +1 -0
- package/dist/daemon/worker/commandRegistry.d.ts +10 -0
- package/dist/daemon/worker/commandRegistry.d.ts.map +1 -0
- package/dist/daemon/worker/commandRegistry.js +289 -0
- package/dist/daemon/worker/commandRegistry.js.map +1 -0
- package/dist/daemon/worker/plugins.d.ts +21 -0
- package/dist/daemon/worker/plugins.d.ts.map +1 -0
- package/dist/daemon/worker/plugins.js +71 -0
- package/dist/daemon/worker/plugins.js.map +1 -0
- package/dist/daemon/worker/types.d.ts +13 -0
- package/dist/daemon/worker/types.d.ts.map +1 -0
- package/dist/daemon/worker/types.js +2 -0
- package/dist/daemon/worker/types.js.map +1 -0
- package/dist/daemon/worker.js +206 -529
- package/dist/daemon/worker.js.map +1 -1
- package/dist/index.js +18 -9
- package/dist/index.js.map +1 -1
- package/dist/ipc/__tests__/client.contract.test.js +2 -2
- package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
- package/dist/ipc/client.d.ts +3 -1
- package/dist/ipc/client.d.ts.map +1 -1
- package/dist/ipc/client.js +27 -14
- package/dist/ipc/client.js.map +1 -1
- package/dist/ipc/commands.d.ts +1 -0
- package/dist/ipc/commands.d.ts.map +1 -1
- package/dist/ipc/commands.js.map +1 -1
- package/dist/ipc/types.d.ts +2 -0
- package/dist/ipc/types.d.ts.map +1 -1
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +67 -65
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/fileOps.d.ts +25 -0
- package/dist/session/fileOps.d.ts.map +1 -0
- package/dist/session/fileOps.js +39 -0
- package/dist/session/fileOps.js.map +1 -0
- package/dist/session/metadata.js +2 -2
- package/dist/session/metadata.js.map +1 -1
- package/dist/session/paths.d.ts +2 -7
- package/dist/session/paths.d.ts.map +1 -1
- package/dist/session/paths.js +8 -8
- package/dist/session/paths.js.map +1 -1
- package/dist/session/queryCache.js +1 -1
- package/dist/session/queryCache.js.map +1 -1
- package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +1 -0
- package/dist/{utils → telemetry}/__tests__/filters.unit.test.js +1 -1
- package/dist/telemetry/__tests__/filters.unit.test.js.map +1 -0
- package/dist/telemetry/__tests__/network.contract.test.js +124 -93
- package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
- package/dist/telemetry/console.d.ts +1 -1
- package/dist/telemetry/console.d.ts.map +1 -1
- package/dist/telemetry/console.js +8 -5
- package/dist/telemetry/console.js.map +1 -1
- package/dist/telemetry/dialogs.d.ts +27 -0
- package/dist/telemetry/dialogs.d.ts.map +1 -0
- package/dist/telemetry/dialogs.js +51 -0
- package/dist/telemetry/dialogs.js.map +1 -0
- package/dist/telemetry/dom.d.ts.map +1 -1
- package/dist/telemetry/dom.js +3 -1
- package/dist/telemetry/dom.js.map +1 -1
- package/dist/{utils → telemetry}/filters.d.ts +40 -0
- package/dist/telemetry/filters.d.ts.map +1 -0
- package/dist/{utils → telemetry}/filters.js +55 -1
- package/dist/telemetry/filters.js.map +1 -0
- package/dist/telemetry/navigation.d.ts +49 -0
- package/dist/telemetry/navigation.d.ts.map +1 -0
- package/dist/telemetry/navigation.js +69 -0
- package/dist/telemetry/navigation.js.map +1 -0
- package/dist/telemetry/network.d.ts +1 -0
- package/dist/telemetry/network.d.ts.map +1 -1
- package/dist/telemetry/network.js +23 -34
- package/dist/telemetry/network.js.map +1 -1
- package/dist/types.d.ts +2 -141
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/{errors.d.ts → errors/CommandError.d.ts} +1 -1
- package/dist/ui/errors/CommandError.d.ts.map +1 -0
- package/dist/ui/{errors.js → errors/CommandError.js} +1 -1
- package/dist/ui/errors/CommandError.js.map +1 -0
- package/dist/ui/errors/index.d.ts +9 -0
- package/dist/ui/errors/index.d.ts.map +1 -0
- package/dist/ui/errors/index.js +12 -0
- package/dist/ui/errors/index.js.map +1 -0
- package/dist/ui/errors/utils.d.ts +24 -0
- package/dist/ui/errors/utils.d.ts.map +1 -0
- package/dist/ui/errors/utils.js +28 -0
- package/dist/ui/errors/utils.js.map +1 -0
- package/dist/ui/formatters/status.d.ts.map +1 -1
- package/dist/ui/formatters/status.js +1 -1
- package/dist/ui/formatters/status.js.map +1 -1
- package/dist/ui/logging/index.d.ts +7 -0
- package/dist/ui/logging/index.d.ts.map +1 -0
- package/dist/ui/logging/index.js +7 -0
- package/dist/ui/logging/index.js.map +1 -0
- package/dist/{utils → ui/logging}/logger.d.ts +1 -1
- package/dist/ui/logging/logger.d.ts.map +1 -0
- package/dist/ui/logging/logger.js.map +1 -0
- package/dist/ui/messages/chrome.d.ts +50 -1
- package/dist/ui/messages/chrome.d.ts.map +1 -1
- package/dist/ui/messages/chrome.js +77 -0
- package/dist/ui/messages/chrome.js.map +1 -1
- package/dist/ui/messages/commands.d.ts +1 -0
- package/dist/ui/messages/commands.d.ts.map +1 -1
- package/dist/ui/messages/commands.js +1 -0
- package/dist/ui/messages/commands.js.map +1 -1
- package/dist/ui/messages/errors.d.ts +30 -3
- package/dist/ui/messages/errors.d.ts.map +1 -1
- package/dist/ui/messages/errors.js +36 -8
- package/dist/ui/messages/errors.js.map +1 -1
- package/dist/ui/messages/preview.js +1 -1
- package/dist/ui/messages/preview.js.map +1 -1
- package/dist/ui/messages/session.d.ts.map +1 -1
- package/dist/ui/messages/session.js +22 -7
- package/dist/ui/messages/session.js.map +1 -1
- package/dist/ui/messages/validation.d.ts +22 -4
- package/dist/ui/messages/validation.d.ts.map +1 -1
- package/dist/ui/messages/validation.js +26 -5
- package/dist/ui/messages/validation.js.map +1 -1
- package/dist/utils/__tests__/session.contract.test.js +15 -1
- package/dist/utils/__tests__/session.contract.test.js.map +1 -1
- package/dist/utils/url.d.ts.map +1 -1
- package/dist/utils/url.js +10 -0
- package/dist/utils/url.js.map +1 -1
- package/package.json +3 -1
- package/dist/cli/commands/__tests__/cdp.contract.test.d.ts +0 -24
- package/dist/cli/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
- package/dist/cli/commands/__tests__/cdp.contract.test.js +0 -467
- package/dist/cli/commands/__tests__/cdp.contract.test.js.map +0 -1
- package/dist/cli/commands/cdp.d.ts +0 -8
- package/dist/cli/commands/cdp.d.ts.map +0 -1
- package/dist/cli/commands/cdp.js +0 -45
- package/dist/cli/commands/cdp.js.map +0 -1
- package/dist/cli/commands/cleanup.d.ts +0 -8
- package/dist/cli/commands/cleanup.d.ts.map +0 -1
- package/dist/cli/commands/cleanup.js +0 -129
- package/dist/cli/commands/cleanup.js.map +0 -1
- package/dist/cli/commands/console.d.ts +0 -8
- package/dist/cli/commands/console.d.ts.map +0 -1
- package/dist/cli/commands/console.js +0 -97
- package/dist/cli/commands/console.js.map +0 -1
- package/dist/cli/commands/details.d.ts +0 -8
- package/dist/cli/commands/details.d.ts.map +0 -1
- package/dist/cli/commands/details.js +0 -68
- package/dist/cli/commands/details.js.map +0 -1
- package/dist/cli/commands/dom/helpers/domCache.d.ts +0 -36
- package/dist/cli/commands/dom/helpers/domCache.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/domCache.js +0 -65
- package/dist/cli/commands/dom/helpers/domCache.js.map +0 -1
- package/dist/cli/commands/dom/helpers/domQuery.d.ts +0 -48
- package/dist/cli/commands/dom/helpers/domQuery.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/domQuery.js +0 -104
- package/dist/cli/commands/dom/helpers/domQuery.js.map +0 -1
- package/dist/cli/commands/dom/helpers/errorHandler.d.ts +0 -45
- package/dist/cli/commands/dom/helpers/errorHandler.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/errorHandler.js +0 -71
- package/dist/cli/commands/dom/helpers/errorHandler.js.map +0 -1
- package/dist/cli/commands/dom/helpers/evalHelpers.d.ts +0 -52
- package/dist/cli/commands/dom/helpers/evalHelpers.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/evalHelpers.js +0 -75
- package/dist/cli/commands/dom/helpers/evalHelpers.js.map +0 -1
- package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts +0 -35
- package/dist/cli/commands/dom/helpers/optionsBuilder.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/optionsBuilder.js +0 -51
- package/dist/cli/commands/dom/helpers/optionsBuilder.js.map +0 -1
- package/dist/cli/commands/dom/helpers/selectorParser.d.ts +0 -20
- package/dist/cli/commands/dom/helpers/selectorParser.d.ts.map +0 -1
- package/dist/cli/commands/dom/helpers/selectorParser.js +0 -20
- package/dist/cli/commands/dom/helpers/selectorParser.js.map +0 -1
- package/dist/cli/commands/dom/index.d.ts +0 -8
- package/dist/cli/commands/dom/index.d.ts.map +0 -1
- package/dist/cli/commands/dom/index.js +0 -257
- package/dist/cli/commands/dom/index.js.map +0 -1
- package/dist/cli/commands/dom.d.ts +0 -8
- package/dist/cli/commands/dom.d.ts.map +0 -1
- package/dist/cli/commands/dom.js +0 -257
- package/dist/cli/commands/dom.js.map +0 -1
- package/dist/cli/commands/domErrorHandler.d.ts +0 -45
- package/dist/cli/commands/domErrorHandler.d.ts.map +0 -1
- package/dist/cli/commands/domErrorHandler.js +0 -71
- package/dist/cli/commands/domErrorHandler.js.map +0 -1
- package/dist/cli/commands/domEvalHelpers.d.ts +0 -52
- package/dist/cli/commands/domEvalHelpers.d.ts.map +0 -1
- package/dist/cli/commands/domEvalHelpers.js +0 -76
- package/dist/cli/commands/domEvalHelpers.js.map +0 -1
- package/dist/cli/commands/domOptionsBuilder.d.ts +0 -35
- package/dist/cli/commands/domOptionsBuilder.d.ts.map +0 -1
- package/dist/cli/commands/domOptionsBuilder.js +0 -51
- package/dist/cli/commands/domOptionsBuilder.js.map +0 -1
- package/dist/cli/commands/domSelectorParser.d.ts +0 -20
- package/dist/cli/commands/domSelectorParser.d.ts.map +0 -1
- package/dist/cli/commands/domSelectorParser.js +0 -20
- package/dist/cli/commands/domSelectorParser.js.map +0 -1
- package/dist/cli/commands/network.d.ts +0 -8
- package/dist/cli/commands/network.d.ts.map +0 -1
- package/dist/cli/commands/network.js +0 -43
- package/dist/cli/commands/network.js.map +0 -1
- package/dist/cli/commands/peek.d.ts +0 -8
- package/dist/cli/commands/peek.d.ts.map +0 -1
- package/dist/cli/commands/peek.js +0 -109
- package/dist/cli/commands/peek.js.map +0 -1
- package/dist/cli/commands/start.d.ts +0 -9
- package/dist/cli/commands/start.d.ts.map +0 -1
- package/dist/cli/commands/start.js +0 -95
- package/dist/cli/commands/start.js.map +0 -1
- package/dist/cli/commands/status.d.ts +0 -9
- package/dist/cli/commands/status.d.ts.map +0 -1
- package/dist/cli/commands/status.js +0 -87
- package/dist/cli/commands/status.js.map +0 -1
- package/dist/cli/commands/stop.d.ts +0 -8
- package/dist/cli/commands/stop.d.ts.map +0 -1
- package/dist/cli/commands/stop.js +0 -147
- package/dist/cli/commands/stop.js.map +0 -1
- package/dist/cli/formatters/detailsFormatter.d.ts +0 -10
- package/dist/cli/formatters/detailsFormatter.d.ts.map +0 -1
- package/dist/cli/formatters/detailsFormatter.js +0 -63
- package/dist/cli/formatters/detailsFormatter.js.map +0 -1
- package/dist/cli/formatters/previewFormatter.d.ts +0 -27
- package/dist/cli/formatters/previewFormatter.d.ts.map +0 -1
- package/dist/cli/formatters/previewFormatter.js +0 -160
- package/dist/cli/formatters/previewFormatter.js.map +0 -1
- package/dist/cli/formatters/statusFormatter.d.ts +0 -39
- package/dist/cli/formatters/statusFormatter.d.ts.map +0 -1
- package/dist/cli/formatters/statusFormatter.js +0 -153
- package/dist/cli/formatters/statusFormatter.js.map +0 -1
- package/dist/cli/handlers/CommandRunner.d.ts +0 -60
- package/dist/cli/handlers/CommandRunner.d.ts.map +0 -1
- package/dist/cli/handlers/CommandRunner.js +0 -81
- package/dist/cli/handlers/CommandRunner.js.map +0 -1
- package/dist/cli/handlers/OutputBuilder.d.ts +0 -60
- package/dist/cli/handlers/OutputBuilder.d.ts.map +0 -1
- package/dist/cli/handlers/OutputBuilder.js +0 -138
- package/dist/cli/handlers/OutputBuilder.js.map +0 -1
- package/dist/cli/handlers/commonOptions.d.ts +0 -54
- package/dist/cli/handlers/commonOptions.d.ts.map +0 -1
- package/dist/cli/handlers/commonOptions.js +0 -64
- package/dist/cli/handlers/commonOptions.js.map +0 -1
- package/dist/cli/handlers/daemonSessionController.d.ts +0 -23
- package/dist/cli/handlers/daemonSessionController.d.ts.map +0 -1
- package/dist/cli/handlers/daemonSessionController.js +0 -79
- package/dist/cli/handlers/daemonSessionController.js.map +0 -1
- package/dist/cli/handlers/landingPage.d.ts +0 -8
- package/dist/cli/handlers/landingPage.d.ts.map +0 -1
- package/dist/cli/handlers/landingPage.js +0 -8
- package/dist/cli/handlers/landingPage.js.map +0 -1
- package/dist/cli/handlers/sessionController.d.ts +0 -21
- package/dist/cli/handlers/sessionController.d.ts.map +0 -1
- package/dist/cli/handlers/sessionController.js +0 -55
- package/dist/cli/handlers/sessionController.js.map +0 -1
- package/dist/cli/registry.d.ts +0 -11
- package/dist/cli/registry.d.ts.map +0 -1
- package/dist/cli/registry.js +0 -46
- package/dist/cli/registry.js.map +0 -1
- package/dist/collectors/__tests__/network.contract.test.d.ts +0 -28
- package/dist/collectors/__tests__/network.contract.test.d.ts.map +0 -1
- package/dist/collectors/__tests__/network.contract.test.js +0 -540
- package/dist/collectors/__tests__/network.contract.test.js.map +0 -1
- package/dist/collectors/console.d.ts +0 -19
- package/dist/collectors/console.d.ts.map +0 -1
- package/dist/collectors/console.js +0 -87
- package/dist/collectors/console.js.map +0 -1
- package/dist/collectors/dom.d.ts +0 -21
- package/dist/collectors/dom.d.ts.map +0 -1
- package/dist/collectors/dom.js +0 -99
- package/dist/collectors/dom.js.map +0 -1
- package/dist/collectors/network.d.ts +0 -33
- package/dist/collectors/network.d.ts.map +0 -1
- package/dist/collectors/network.js +0 -191
- package/dist/collectors/network.js.map +0 -1
- package/dist/commandRegistry.d.ts +0 -11
- package/dist/commandRegistry.d.ts.map +0 -1
- package/dist/commandRegistry.js +0 -45
- package/dist/commandRegistry.js.map +0 -1
- package/dist/commands/domErrorHandler.d.ts +0 -45
- package/dist/commands/domErrorHandler.d.ts.map +0 -1
- package/dist/commands/domErrorHandler.js +0 -71
- package/dist/commands/domErrorHandler.js.map +0 -1
- package/dist/dom/cache.d.ts +0 -36
- package/dist/dom/cache.d.ts.map +0 -1
- package/dist/dom/cache.js +0 -65
- package/dist/dom/cache.js.map +0 -1
- package/dist/dom/index.d.ts +0 -9
- package/dist/dom/index.d.ts.map +0 -1
- package/dist/dom/index.js +0 -9
- package/dist/dom/index.js.map +0 -1
- package/dist/dom/query.d.ts +0 -48
- package/dist/dom/query.d.ts.map +0 -1
- package/dist/dom/query.js +0 -104
- package/dist/dom/query.js.map +0 -1
- package/dist/ui/errors.d.ts.map +0 -1
- package/dist/ui/errors.js.map +0 -1
- package/dist/ui/messages/index.d.ts +0 -12
- package/dist/ui/messages/index.d.ts.map +0 -1
- package/dist/ui/messages/index.js +0 -12
- package/dist/ui/messages/index.js.map +0 -1
- package/dist/utils/__tests__/filters.unit.test.d.ts.map +0 -1
- package/dist/utils/__tests__/filters.unit.test.js.map +0 -1
- package/dist/utils/cdpHandlers.d.ts +0 -31
- package/dist/utils/cdpHandlers.d.ts.map +0 -1
- package/dist/utils/cdpHandlers.js +0 -38
- package/dist/utils/cdpHandlers.js.map +0 -1
- package/dist/utils/chromeDiagnostics.d.ts.map +0 -1
- package/dist/utils/chromeDiagnostics.js.map +0 -1
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/filters.d.ts.map +0 -1
- package/dist/utils/filters.js.map +0 -1
- package/dist/utils/formatters/network.d.ts +0 -23
- package/dist/utils/formatters/network.d.ts.map +0 -1
- package/dist/utils/formatters/network.js +0 -35
- package/dist/utils/formatters/network.js.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/pageReadiness.d.ts.map +0 -1
- package/dist/utils/pageReadiness.js.map +0 -1
- package/dist/utils/ui.d.ts +0 -36
- package/dist/utils/ui.d.ts.map +0 -1
- package/dist/utils/ui.js +0 -47
- package/dist/utils/ui.js.map +0 -1
- package/dist/utils/url/safeParseUrl.d.ts +0 -63
- package/dist/utils/url/safeParseUrl.d.ts.map +0 -1
- package/dist/utils/url/safeParseUrl.js +0 -84
- package/dist/utils/url/safeParseUrl.js.map +0 -1
- /package/dist/{utils → connection}/pageReadiness.d.ts +0 -0
- /package/dist/{utils → telemetry}/__tests__/filters.unit.test.d.ts +0 -0
- /package/dist/{utils → ui/logging}/logger.js +0 -0
|
@@ -1,23 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Connection layer error classes.
|
|
3
3
|
*
|
|
4
|
-
* Provides structured error handling
|
|
5
|
-
* for better debugging and user-friendly error messages.
|
|
4
|
+
* Provides structured error handling for CDP connections and Chrome launches.
|
|
6
5
|
*/
|
|
7
6
|
/**
|
|
8
|
-
* Base error class for all
|
|
7
|
+
* Base error class for all connection-related errors.
|
|
9
8
|
*
|
|
10
|
-
* Extends native Error with
|
|
11
|
-
*
|
|
12
|
-
* - Category for filtering (system/user/external)
|
|
13
|
-
* - Exit code for semantic exit codes (80-99 user errors, 100-119 software errors)
|
|
14
|
-
* - Cause chaining for nested errors
|
|
9
|
+
* Extends native Error with error codes for programmatic handling,
|
|
10
|
+
* exit codes for semantic exit codes, and cause chaining for nested errors.
|
|
15
11
|
*/
|
|
16
|
-
export class
|
|
12
|
+
export class ConnectionError extends Error {
|
|
17
13
|
constructor(message, cause) {
|
|
18
14
|
super(message);
|
|
19
15
|
this.name = this.constructor.name;
|
|
20
|
-
|
|
16
|
+
if (cause) {
|
|
17
|
+
this.cause = cause;
|
|
18
|
+
}
|
|
21
19
|
}
|
|
22
20
|
}
|
|
23
21
|
/**
|
|
@@ -28,9 +26,8 @@ export class BdgError extends Error {
|
|
|
28
26
|
* - Chrome not running on specified port
|
|
29
27
|
* - Protocol version mismatch
|
|
30
28
|
*/
|
|
31
|
-
export class CDPConnectionError extends
|
|
29
|
+
export class CDPConnectionError extends ConnectionError {
|
|
32
30
|
code = 'CDP_CONNECTION_ERROR';
|
|
33
|
-
category = 'external';
|
|
34
31
|
exitCode = 101; // CDP_CONNECTION_FAILURE
|
|
35
32
|
}
|
|
36
33
|
/**
|
|
@@ -41,9 +38,8 @@ export class CDPConnectionError extends BdgError {
|
|
|
41
38
|
* - Insufficient permissions
|
|
42
39
|
* - Port already in use
|
|
43
40
|
*/
|
|
44
|
-
export class ChromeLaunchError extends
|
|
41
|
+
export class ChromeLaunchError extends ConnectionError {
|
|
45
42
|
code = 'CHROME_LAUNCH_ERROR';
|
|
46
|
-
category = 'system';
|
|
47
43
|
exitCode = 100; // CHROME_LAUNCH_FAILURE
|
|
48
44
|
}
|
|
49
45
|
/**
|
|
@@ -53,9 +49,8 @@ export class ChromeLaunchError extends BdgError {
|
|
|
53
49
|
* - Command took longer than 30s
|
|
54
50
|
* - Browser became unresponsive
|
|
55
51
|
*/
|
|
56
|
-
export class CDPTimeoutError extends
|
|
52
|
+
export class CDPTimeoutError extends ConnectionError {
|
|
57
53
|
code = 'CDP_TIMEOUT_ERROR';
|
|
58
|
-
category = 'external';
|
|
59
54
|
exitCode = 102; // CDP_TIMEOUT
|
|
60
55
|
}
|
|
61
56
|
/**
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/connection/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AACH,MAAM,OAAgB,eAAgB,SAAQ,KAAK;IAIjD,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAmB,SAAQ,eAAe;IAC5C,IAAI,GAAG,sBAAsB,CAAC;IAC9B,QAAQ,GAAG,GAAG,CAAC,CAAC,yBAAyB;CACnD;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,eAAe;IAC3C,IAAI,GAAG,qBAAqB,CAAC;IAC7B,QAAQ,GAAG,GAAG,CAAC,CAAC,wBAAwB;CAClD;AAED;;;;;;GAMG;AACH,MAAM,OAAO,eAAgB,SAAQ,eAAe;IACzC,IAAI,GAAG,mBAAmB,CAAC;IAC3B,QAAQ,GAAG,GAAG,CAAC,CAAC,cAAc;CACxC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type ProtocolMapping from 'devtools-protocol/types/protocol-mapping';
|
|
2
|
+
import type { CDPConnection } from '../connection/cdp.js';
|
|
3
|
+
import type { TypedCDPConnection } from '../connection/typed-cdp.js';
|
|
4
|
+
/**
|
|
5
|
+
* Extract event parameter type from a CDP event.
|
|
6
|
+
*/
|
|
7
|
+
type EventParams<T extends keyof ProtocolMapping.Events> = ProtocolMapping.Events[T] extends [
|
|
8
|
+
infer P
|
|
9
|
+
] ? P : ProtocolMapping.Events[T] extends [] ? void : never;
|
|
10
|
+
/**
|
|
11
|
+
* Registry for managing CDP event handlers with automatic cleanup.
|
|
12
|
+
*
|
|
13
|
+
* Provides a centralized way to register and clean up CDP event handlers,
|
|
14
|
+
* eliminating the boilerplate code repeated across all telemetry modules.
|
|
15
|
+
*
|
|
16
|
+
* Supports both legacy untyped usage and new type-safe usage with TypedCDPConnection.
|
|
17
|
+
*/
|
|
18
|
+
export declare class CDPHandlerRegistry {
|
|
19
|
+
private handlers;
|
|
20
|
+
/**
|
|
21
|
+
* Register a CDP event handler and track it for cleanup (legacy API).
|
|
22
|
+
*
|
|
23
|
+
* @param cdp - CDP connection instance
|
|
24
|
+
* @param event - CDP event name (e.g., 'Network.requestWillBeSent')
|
|
25
|
+
* @param handler - Event handler function
|
|
26
|
+
*
|
|
27
|
+
* @deprecated Use registerTyped() with TypedCDPConnection for type safety
|
|
28
|
+
*/
|
|
29
|
+
register<T>(cdp: CDPConnection, event: string, handler: (params: T) => void): void;
|
|
30
|
+
/**
|
|
31
|
+
* Register a type-safe CDP event handler and track it for cleanup.
|
|
32
|
+
*
|
|
33
|
+
* @param typed - Typed CDP connection instance
|
|
34
|
+
* @param event - CDP event name (autocomplete available)
|
|
35
|
+
* @param handler - Event handler with type-safe parameters
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* const registry = new CDPHandlerRegistry();
|
|
40
|
+
* const typed = new TypedCDPConnection(cdp);
|
|
41
|
+
*
|
|
42
|
+
* registry.registerTyped(typed, 'Network.requestWillBeSent', (event) => {
|
|
43
|
+
* // event is typed as Protocol.Network.RequestWillBeSentEvent
|
|
44
|
+
* console.log(event.request.url);
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
registerTyped<T extends keyof ProtocolMapping.Events>(typed: TypedCDPConnection, event: T, handler: (params: EventParams<T>) => void): void;
|
|
49
|
+
/**
|
|
50
|
+
* Remove all registered event handlers and clear the registry.
|
|
51
|
+
*
|
|
52
|
+
* @param cdp - CDP connection instance (or TypedCDPConnection.raw)
|
|
53
|
+
*/
|
|
54
|
+
cleanup(cdp: CDPConnection): void;
|
|
55
|
+
/**
|
|
56
|
+
* Get the number of registered handlers.
|
|
57
|
+
*
|
|
58
|
+
* @returns Number of active handlers
|
|
59
|
+
*/
|
|
60
|
+
size(): number;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
63
|
+
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/connection/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,0CAA0C,CAAC;AAE5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;GAEG;AACH,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;IAC3F,MAAM,CAAC;CACR,GACG,CAAC,GACD,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,GAClC,IAAI,GACJ,KAAK,CAAC;AAEZ;;;;;;;GAOG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAA4C;IAE5D;;;;;;;;OAQG;IACH,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAKlF;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,CAAC,CAAC,SAAS,MAAM,eAAe,CAAC,MAAM,EAClD,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,GACxC,IAAI;IAKP;;;;OAIG;IACH,OAAO,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAKjC;;;;OAIG;IACH,IAAI,IAAI,MAAM;CAGf"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registry for managing CDP event handlers with automatic cleanup.
|
|
3
|
+
*
|
|
4
|
+
* Provides a centralized way to register and clean up CDP event handlers,
|
|
5
|
+
* eliminating the boilerplate code repeated across all telemetry modules.
|
|
6
|
+
*
|
|
7
|
+
* Supports both legacy untyped usage and new type-safe usage with TypedCDPConnection.
|
|
8
|
+
*/
|
|
9
|
+
export class CDPHandlerRegistry {
|
|
10
|
+
handlers = [];
|
|
11
|
+
/**
|
|
12
|
+
* Register a CDP event handler and track it for cleanup (legacy API).
|
|
13
|
+
*
|
|
14
|
+
* @param cdp - CDP connection instance
|
|
15
|
+
* @param event - CDP event name (e.g., 'Network.requestWillBeSent')
|
|
16
|
+
* @param handler - Event handler function
|
|
17
|
+
*
|
|
18
|
+
* @deprecated Use registerTyped() with TypedCDPConnection for type safety
|
|
19
|
+
*/
|
|
20
|
+
register(cdp, event, handler) {
|
|
21
|
+
const id = cdp.on(event, handler);
|
|
22
|
+
this.handlers.push({ event, id });
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Register a type-safe CDP event handler and track it for cleanup.
|
|
26
|
+
*
|
|
27
|
+
* @param typed - Typed CDP connection instance
|
|
28
|
+
* @param event - CDP event name (autocomplete available)
|
|
29
|
+
* @param handler - Event handler with type-safe parameters
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const registry = new CDPHandlerRegistry();
|
|
34
|
+
* const typed = new TypedCDPConnection(cdp);
|
|
35
|
+
*
|
|
36
|
+
* registry.registerTyped(typed, 'Network.requestWillBeSent', (event) => {
|
|
37
|
+
* // event is typed as Protocol.Network.RequestWillBeSentEvent
|
|
38
|
+
* console.log(event.request.url);
|
|
39
|
+
* });
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
registerTyped(typed, event, handler) {
|
|
43
|
+
const id = typed.on(event, handler);
|
|
44
|
+
this.handlers.push({ event, id });
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Remove all registered event handlers and clear the registry.
|
|
48
|
+
*
|
|
49
|
+
* @param cdp - CDP connection instance (or TypedCDPConnection.raw)
|
|
50
|
+
*/
|
|
51
|
+
cleanup(cdp) {
|
|
52
|
+
this.handlers.forEach(({ event, id }) => cdp.off(event, id));
|
|
53
|
+
this.handlers.length = 0;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get the number of registered handlers.
|
|
57
|
+
*
|
|
58
|
+
* @returns Number of active handlers
|
|
59
|
+
*/
|
|
60
|
+
size() {
|
|
61
|
+
return this.handlers.length;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=handlers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/connection/handlers.ts"],"names":[],"mappings":"AAgBA;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACrB,QAAQ,GAAyC,EAAE,CAAC;IAE5D;;;;;;;;OAQG;IACH,QAAQ,CAAI,GAAkB,EAAE,KAAa,EAAE,OAA4B;QACzE,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,CACX,KAAyB,EACzB,KAAQ,EACR,OAAyC;QAEzC,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,GAAkB;QACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -4,7 +4,7 @@ import type { LaunchedChrome } from '../types';
|
|
|
4
4
|
* Options that control how Chrome is launched for CDP sessions.
|
|
5
5
|
* Extended to support chrome-launcher advanced features.
|
|
6
6
|
*/
|
|
7
|
-
export interface LaunchOptions extends Pick<ChromeLaunchOptions, 'logLevel' | 'connectionPollInterval' | 'maxConnectionRetries' | 'portStrictMode' | 'envVars' | 'handleSIGINT' | 'ignoreDefaultFlags' | 'chromeFlags'> {
|
|
7
|
+
export interface LaunchOptions extends Pick<ChromeLaunchOptions, 'logLevel' | 'connectionPollInterval' | 'maxConnectionRetries' | 'portStrictMode' | 'envVars' | 'handleSIGINT' | 'ignoreDefaultFlags' | 'chromeFlags' | 'chromePath'> {
|
|
8
8
|
/** Remote debugging port (defaults to 9222 when omitted) */
|
|
9
9
|
port?: number;
|
|
10
10
|
/** Directory for Chrome profile data. Falls back to persistent ~/.bdg/chrome-profile directory */
|
|
@@ -17,25 +17,8 @@ export interface LaunchOptions extends Pick<ChromeLaunchOptions, 'logLevel' | 'c
|
|
|
17
17
|
prefs?: Record<string, unknown> | undefined;
|
|
18
18
|
/** Path to JSON file containing Chrome preferences */
|
|
19
19
|
prefsFile?: string | undefined;
|
|
20
|
+
/** Override Chrome binary detection with an explicit path */
|
|
21
|
+
chromePath?: string;
|
|
20
22
|
}
|
|
21
|
-
/**
|
|
22
|
-
* Launch Chrome with remote debugging enabled using chrome-launcher.
|
|
23
|
-
*
|
|
24
|
-
* Supports macOS, Linux, and Windows. Chrome will be launched with
|
|
25
|
-
* the specified debugging port and user data directory.
|
|
26
|
-
*
|
|
27
|
-
* Validates Chrome process is alive after launch to detect immediate crashes
|
|
28
|
-
* or port conflicts. Includes Chrome installation diagnostics in error messages
|
|
29
|
-
* to aid troubleshooting.
|
|
30
|
-
*
|
|
31
|
-
* @param options - Launch configuration options
|
|
32
|
-
* @returns LaunchedChrome instance with PID and kill method
|
|
33
|
-
* @throws ChromeLaunchError if Chrome fails to launch, process dies immediately, or CDP doesn't become available
|
|
34
|
-
* @throws Error if user data directory cannot be created
|
|
35
|
-
*
|
|
36
|
-
* @remarks
|
|
37
|
-
* Chrome 136+ requires --user-data-dir with a non-default directory.
|
|
38
|
-
* Uses chrome-launcher for cross-platform Chrome detection and launching.
|
|
39
|
-
*/
|
|
40
23
|
export declare function launchChrome(options?: LaunchOptions): Promise<LaunchedChrome>;
|
|
41
24
|
//# sourceMappingURL=launcher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../src/connection/launcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../src/connection/launcher.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AActE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAyD9C;;;GAGG;AACH,MAAM,WAAW,aACf,SAAQ,IAAI,CACV,mBAAmB,EACjB,UAAU,GACV,wBAAwB,GACxB,sBAAsB,GACtB,gBAAgB,GAChB,SAAS,GACT,cAAc,GACd,oBAAoB,GACpB,aAAa,GACb,YAAY,CACf;IACD,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kGAAkG;IAClG,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kGAAkG;IAClG,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5C,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAiED,wBAAsB,YAAY,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,cAAc,CAAC,CA6GvF"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { execSync } from 'child_process';
|
|
2
1
|
import * as fs from 'fs';
|
|
3
|
-
import * as
|
|
2
|
+
import * as net from 'net';
|
|
4
3
|
import * as path from 'path';
|
|
5
4
|
import * as chromeLauncher from 'chrome-launcher';
|
|
6
|
-
import { BDG_CHROME_FLAGS, BDG_CHROME_PREFS, DEFAULT_CDP_PORT, DEFAULT_CHROME_LOG_LEVEL, DEFAULT_CHROME_HANDLE_SIGINT, CHROME_PROFILE_DIR, HEADLESS_FLAG, } from '../constants.js';
|
|
5
|
+
import { BDG_CHROME_FLAGS, BDG_CHROME_PREFS, DEFAULT_CDP_PORT, DEFAULT_CHROME_LOG_LEVEL, DEFAULT_CHROME_HANDLE_SIGINT, CHROME_PROFILE_DIR, HEADLESS_FLAG, DOCKER_CHROME_FLAGS, } from '../constants.js';
|
|
6
|
+
import { ensureSessionDir, getSessionDir } from '../session/paths.js';
|
|
7
7
|
import { isProcessAlive } from '../session/process.js';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { ChromeLaunchError, getErrorMessage } from '../utils/errors.js';
|
|
11
|
-
import { createLogger } from '../utils/logger.js';
|
|
8
|
+
import { createLogger } from '../ui/logging/index.js';
|
|
9
|
+
import { formatDiagnosticsForError, chromeLaunchSuccessMessage, chromeUserDataDirMessage, invalidPortError, userDataDirError, prefsFileNotFoundError, invalidPrefsFormatError, prefsLoadError, chromeLaunchFailedError, chromeBinaryOverrideNotFound, chromeBinaryOverrideNotExecutable, } from '../ui/messages/chrome.js';
|
|
12
10
|
import { filterDefined } from '../utils/objects.js';
|
|
11
|
+
import { getChromeDiagnostics } from './diagnostics.js';
|
|
12
|
+
import { ChromeLaunchError, getErrorMessage } from './errors.js';
|
|
13
13
|
const log = createLogger('chrome');
|
|
14
14
|
/**
|
|
15
15
|
* Get formatted Chrome diagnostics for error messages.
|
|
@@ -46,43 +46,78 @@ const REMOTE_DEBUGGING_FLAG = (port) => `--remote-debugging-port=${port}`;
|
|
|
46
46
|
* Chrome 136+ requires --user-data-dir with a non-default directory.
|
|
47
47
|
* Uses chrome-launcher for cross-platform Chrome detection and launching.
|
|
48
48
|
*/
|
|
49
|
+
/**
|
|
50
|
+
* Atomically reserve a port to prevent race conditions during Chrome launch.
|
|
51
|
+
*
|
|
52
|
+
* Creates a temporary TCP server on the port, which prevents other processes
|
|
53
|
+
* from binding to it. Returns a release function to free the port.
|
|
54
|
+
*
|
|
55
|
+
* @param port - Port number to reserve
|
|
56
|
+
* @returns Promise resolving to reservation object with release function
|
|
57
|
+
* @throws ChromeLaunchError If port is already in use
|
|
58
|
+
*/
|
|
59
|
+
async function reservePort(port) {
|
|
60
|
+
return new Promise((resolve, reject) => {
|
|
61
|
+
const server = net.createServer();
|
|
62
|
+
server.once('error', (err) => {
|
|
63
|
+
if (err.code === 'EADDRINUSE') {
|
|
64
|
+
// Port is already in use - provide helpful error message
|
|
65
|
+
reject(new ChromeLaunchError(`Port ${port} is already in use.\n\n` +
|
|
66
|
+
`This usually means Chrome is still running from a previous session.\n\n` +
|
|
67
|
+
`Try:\n` +
|
|
68
|
+
` - bdg cleanup --aggressive (kills all Chrome processes)\n` +
|
|
69
|
+
` - bdg cleanup --force (removes session files + kills Chrome on port ${port})\n` +
|
|
70
|
+
` - lsof -ti:${port} | xargs kill -9 (force kill process on port)\n` +
|
|
71
|
+
` - Use different port: bdg <url> --port ${port + 1}`));
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
reject(err);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
server.listen(port, '127.0.0.1', () => {
|
|
78
|
+
// Port successfully reserved - return release function
|
|
79
|
+
resolve({
|
|
80
|
+
release: () => {
|
|
81
|
+
server.close();
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
}
|
|
49
87
|
export async function launchChrome(options = {}) {
|
|
50
88
|
const port = options.port ?? DEFAULT_CDP_PORT;
|
|
51
89
|
// Validate port range
|
|
52
90
|
if (port < 1 || port > 65535) {
|
|
53
91
|
throw new ChromeLaunchError(invalidPortError(port));
|
|
54
92
|
}
|
|
55
|
-
//
|
|
56
|
-
//
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
` - kill ${portInUse} (manually kill the process)\n` +
|
|
67
|
-
` - Use different port: bdg <url> --port ${port + 1}`);
|
|
93
|
+
// Atomically check if port is available
|
|
94
|
+
// We must release BEFORE launching Chrome so Chrome can bind to it
|
|
95
|
+
const reservation = await reservePort(port);
|
|
96
|
+
// Immediately release - we just wanted to atomically check availability
|
|
97
|
+
// Chrome needs to bind to this port, so we can't hold the reservation
|
|
98
|
+
reservation.release();
|
|
99
|
+
const userDataDir = options.userDataDir ?? getPersistentUserDataDir();
|
|
100
|
+
// Ensure userDataDir exists (chrome-launcher needs it for chrome-out.log)
|
|
101
|
+
if (!fs.existsSync(userDataDir)) {
|
|
102
|
+
try {
|
|
103
|
+
fs.mkdirSync(userDataDir, { recursive: true });
|
|
68
104
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
// Re-throw ChromeLaunchError, ignore other errors (lsof not available, etc.)
|
|
72
|
-
if (error instanceof ChromeLaunchError) {
|
|
73
|
-
throw error;
|
|
105
|
+
catch (error) {
|
|
106
|
+
throw new ChromeLaunchError(userDataDirError(userDataDir, getErrorMessage(error)), error);
|
|
74
107
|
}
|
|
75
108
|
}
|
|
76
|
-
|
|
77
|
-
|
|
109
|
+
// Show progress to user (always visible, not just debug)
|
|
110
|
+
console.error(`Launching Chrome on port ${port}...`);
|
|
78
111
|
log.debug(chromeUserDataDirMessage(userDataDir));
|
|
79
112
|
const chromeOptions = buildChromeOptions(options);
|
|
80
113
|
const launcher = new chromeLauncher.Launcher(chromeOptions);
|
|
81
114
|
try {
|
|
82
115
|
const launchStart = Date.now();
|
|
83
116
|
await launcher.launch();
|
|
117
|
+
console.error('Waiting for Chrome to be ready...');
|
|
84
118
|
await launcher.waitUntilReady();
|
|
85
119
|
const launchDurationMs = Date.now() - launchStart;
|
|
120
|
+
console.error(`✓ Chrome ready (${launchDurationMs}ms)`);
|
|
86
121
|
const chromeProcessPid = launcher.pid ?? 0;
|
|
87
122
|
// Validate PID and process liveness before success
|
|
88
123
|
if (!chromeProcessPid || chromeProcessPid <= 0 || !isProcessAlive(chromeProcessPid)) {
|
|
@@ -143,8 +178,9 @@ export async function launchChrome(options = {}) {
|
|
|
143
178
|
* @throws Error if user data directory cannot be created due to permission issues
|
|
144
179
|
*/
|
|
145
180
|
function getPersistentUserDataDir() {
|
|
146
|
-
|
|
147
|
-
const
|
|
181
|
+
ensureSessionDir();
|
|
182
|
+
const baseDir = getSessionDir();
|
|
183
|
+
const userDataDir = path.join(baseDir, CHROME_PROFILE_DIR);
|
|
148
184
|
if (!fs.existsSync(userDataDir)) {
|
|
149
185
|
try {
|
|
150
186
|
fs.mkdirSync(userDataDir, { recursive: true });
|
|
@@ -189,6 +225,66 @@ function loadChromePrefs(options) {
|
|
|
189
225
|
}
|
|
190
226
|
return options.prefs;
|
|
191
227
|
}
|
|
228
|
+
/**
|
|
229
|
+
* Resolve Chrome binary override from LaunchOptions or CHROME_PATH.
|
|
230
|
+
*
|
|
231
|
+
* When users explicitly set a Chrome binary we skip chrome-launcher's fallback
|
|
232
|
+
* auto-detection to ensure mismatched paths fail fast with actionable errors.
|
|
233
|
+
*
|
|
234
|
+
* @param options - Launch options which may include chromePath
|
|
235
|
+
* @returns Validated Chrome binary path or undefined if no override
|
|
236
|
+
* @throws ChromeLaunchError if override path is invalid or not executable
|
|
237
|
+
*/
|
|
238
|
+
function resolveChromeBinaryOverride(options) {
|
|
239
|
+
const override = options.chromePath ?? process.env['CHROME_PATH'];
|
|
240
|
+
if (!override) {
|
|
241
|
+
return undefined;
|
|
242
|
+
}
|
|
243
|
+
const chromePath = override.trim();
|
|
244
|
+
if (!chromePath) {
|
|
245
|
+
return undefined;
|
|
246
|
+
}
|
|
247
|
+
const sourceLabel = options.chromePath ? 'chromePath option' : 'CHROME_PATH';
|
|
248
|
+
if (!fs.existsSync(chromePath)) {
|
|
249
|
+
const diagnostics = getFormattedDiagnostics();
|
|
250
|
+
throw new ChromeLaunchError(`${chromeBinaryOverrideNotFound(chromePath, sourceLabel)}\n\n${diagnostics.join('\n')}`);
|
|
251
|
+
}
|
|
252
|
+
try {
|
|
253
|
+
const stats = fs.statSync(chromePath);
|
|
254
|
+
if (stats.isDirectory()) {
|
|
255
|
+
throw new ChromeLaunchError(chromeBinaryOverrideNotExecutable(chromePath, sourceLabel));
|
|
256
|
+
}
|
|
257
|
+
fs.accessSync(chromePath, fs.constants.X_OK);
|
|
258
|
+
}
|
|
259
|
+
catch (error) {
|
|
260
|
+
if (error instanceof ChromeLaunchError) {
|
|
261
|
+
throw error;
|
|
262
|
+
}
|
|
263
|
+
throw new ChromeLaunchError(`${chromeBinaryOverrideNotExecutable(chromePath, sourceLabel)}\n\n${getErrorMessage(error)}`, error instanceof Error ? error : undefined);
|
|
264
|
+
}
|
|
265
|
+
return chromePath;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Check if running inside a Docker container
|
|
269
|
+
* @returns true if running in Docker, false otherwise
|
|
270
|
+
*/
|
|
271
|
+
function isDocker() {
|
|
272
|
+
try {
|
|
273
|
+
// Check for /.dockerenv file (most reliable indicator)
|
|
274
|
+
if (fs.existsSync('/.dockerenv')) {
|
|
275
|
+
return true;
|
|
276
|
+
}
|
|
277
|
+
// Check /proc/self/cgroup for docker/containerd indicators
|
|
278
|
+
if (fs.existsSync('/proc/self/cgroup')) {
|
|
279
|
+
const cgroup = fs.readFileSync('/proc/self/cgroup', 'utf8');
|
|
280
|
+
return cgroup.includes('docker') || cgroup.includes('containerd');
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
catch {
|
|
284
|
+
// If we can't read these files, assume not Docker
|
|
285
|
+
}
|
|
286
|
+
return false;
|
|
287
|
+
}
|
|
192
288
|
/**
|
|
193
289
|
* Build Chrome flags array from launch options.
|
|
194
290
|
*
|
|
@@ -196,6 +292,9 @@ function loadChromePrefs(options) {
|
|
|
196
292
|
* and layers bdg-specific overrides on top. Headless mode uses the new headless
|
|
197
293
|
* implementation for better compatibility.
|
|
198
294
|
*
|
|
295
|
+
* When running in Docker, automatically adds GPU-disabling flags to work around
|
|
296
|
+
* graphics limitations in containerized environments.
|
|
297
|
+
*
|
|
199
298
|
* @param options - Launch options containing flag preferences
|
|
200
299
|
* @returns Array of Chrome command-line flags
|
|
201
300
|
*/
|
|
@@ -203,10 +302,19 @@ function buildChromeFlags(options) {
|
|
|
203
302
|
const port = options.port ?? DEFAULT_CDP_PORT;
|
|
204
303
|
const baseFlags = options.ignoreDefaultFlags ? [] : chromeLauncher.Launcher.defaultFlags();
|
|
205
304
|
const bdgFlags = [REMOTE_DEBUGGING_FLAG(port), ...BDG_CHROME_FLAGS];
|
|
305
|
+
// Add Docker-specific flags if running in a container
|
|
306
|
+
const dockerFlags = isDocker() ? DOCKER_CHROME_FLAGS : [];
|
|
307
|
+
// Headless flag must come first to ensure it's not overridden by other flags
|
|
206
308
|
if (options.headless) {
|
|
207
|
-
|
|
309
|
+
return [
|
|
310
|
+
HEADLESS_FLAG,
|
|
311
|
+
...baseFlags,
|
|
312
|
+
...bdgFlags,
|
|
313
|
+
...dockerFlags,
|
|
314
|
+
...(options.chromeFlags ?? []),
|
|
315
|
+
];
|
|
208
316
|
}
|
|
209
|
-
return [...baseFlags, ...bdgFlags, ...(options.chromeFlags ?? [])];
|
|
317
|
+
return [...baseFlags, ...bdgFlags, ...dockerFlags, ...(options.chromeFlags ?? [])];
|
|
210
318
|
}
|
|
211
319
|
/**
|
|
212
320
|
* Type-safe conversion for Chrome preferences from unknown to JSONLike.
|
|
@@ -239,6 +347,7 @@ function ensureJSONCompatiblePrefs(prefs) {
|
|
|
239
347
|
function buildChromeOptions(options) {
|
|
240
348
|
const userPrefs = loadChromePrefs(options);
|
|
241
349
|
const userDataDir = options.userDataDir ?? getPersistentUserDataDir();
|
|
350
|
+
const chromePathOverride = resolveChromeBinaryOverride(options);
|
|
242
351
|
// User preferences take precedence over bdg defaults
|
|
243
352
|
const mergedPrefs = userPrefs ? { ...BDG_CHROME_PREFS, ...userPrefs } : BDG_CHROME_PREFS;
|
|
244
353
|
return {
|
|
@@ -255,6 +364,7 @@ function buildChromeOptions(options) {
|
|
|
255
364
|
portStrictMode: options.portStrictMode,
|
|
256
365
|
prefs: ensureJSONCompatiblePrefs(mergedPrefs),
|
|
257
366
|
envVars: options.envVars,
|
|
367
|
+
chromePath: chromePathOverride,
|
|
258
368
|
}),
|
|
259
369
|
};
|
|
260
370
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launcher.js","sourceRoot":"","sources":["../../src/connection/launcher.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"launcher.js","sourceRoot":"","sources":["../../src/connection/launcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pageReadiness.d.ts","sourceRoot":"","sources":["../../src/connection/pageReadiness.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,aAAa,EAClB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAuBf"}
|