browser-debugger-cli 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -6
- package/dist/__tests__/smoke/error-handling.smoke.test.js +14 -48
- package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -1
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +1 -1
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -1
- package/dist/__testutils__/testCleanup.js +1 -1
- package/dist/__testutils__/testCleanup.js.map +1 -1
- package/dist/cdp/protocol.d.ts +0 -48
- package/dist/cdp/protocol.d.ts.map +1 -1
- package/dist/cdp/protocol.js +0 -94
- package/dist/cdp/protocol.js.map +1 -1
- package/dist/commands/__tests__/cdp.contract.test.js +2 -2
- package/dist/commands/__tests__/cdp.contract.test.js.map +1 -1
- package/dist/commands/__tests__/domEval.contract.test.js +8 -4
- package/dist/commands/__tests__/domEval.contract.test.js.map +1 -1
- package/dist/commands/cdp.d.ts.map +1 -1
- package/dist/commands/cdp.js +4 -37
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/cleanup.d.ts.map +1 -1
- package/dist/commands/cleanup.js +4 -17
- package/dist/commands/cleanup.js.map +1 -1
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +3 -8
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/details.d.ts.map +1 -1
- package/dist/commands/details.js +1 -1
- package/dist/commands/details.js.map +1 -1
- package/dist/commands/{domEvalHelpers.d.ts → dom/evalHelpers.d.ts} +8 -5
- package/dist/commands/dom/evalHelpers.d.ts.map +1 -0
- package/dist/commands/{domEvalHelpers.js → dom/evalHelpers.js} +14 -13
- package/dist/commands/dom/evalHelpers.js.map +1 -0
- package/dist/commands/dom/formFillHelpers.d.ts +47 -0
- package/dist/commands/dom/formFillHelpers.d.ts.map +1 -0
- package/dist/commands/dom/formFillHelpers.js +185 -0
- package/dist/commands/dom/formFillHelpers.js.map +1 -0
- package/dist/commands/dom/formInteraction.d.ts +17 -0
- package/dist/commands/dom/formInteraction.d.ts.map +1 -0
- package/dist/commands/dom/formInteraction.js +239 -0
- package/dist/commands/dom/formInteraction.js.map +1 -0
- package/dist/commands/dom/formSubmitHelpers.d.ts +58 -0
- package/dist/commands/dom/formSubmitHelpers.d.ts.map +1 -0
- package/dist/commands/dom/formSubmitHelpers.js +176 -0
- package/dist/commands/dom/formSubmitHelpers.js.map +1 -0
- package/dist/commands/dom/helpers.d.ts +34 -0
- package/dist/commands/dom/helpers.d.ts.map +1 -0
- package/dist/commands/dom/helpers.js +244 -0
- package/dist/commands/dom/helpers.js.map +1 -0
- package/dist/commands/{dom.d.ts → dom/index.d.ts} +1 -1
- package/dist/commands/dom/index.d.ts.map +1 -0
- package/dist/commands/{dom.js → dom/index.js} +33 -123
- package/dist/commands/dom/index.js.map +1 -0
- package/dist/commands/dom/reactEventHelpers.d.ts +80 -0
- package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -0
- package/dist/commands/dom/reactEventHelpers.js +274 -0
- package/dist/commands/dom/reactEventHelpers.js.map +1 -0
- package/dist/commands/network.js +1 -1
- package/dist/commands/network.js.map +1 -1
- package/dist/commands/peek.d.ts.map +1 -1
- package/dist/commands/peek.js +47 -52
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
- package/dist/commands/shared/CommandRunner.js +3 -2
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/commonOptions.d.ts.map +1 -1
- package/dist/commands/shared/commonOptions.js +3 -1
- package/dist/commands/shared/commonOptions.js.map +1 -1
- package/dist/commands/shared/daemonErrorHandler.d.ts +30 -0
- package/dist/commands/shared/daemonErrorHandler.d.ts.map +1 -0
- package/dist/commands/shared/daemonErrorHandler.js +32 -0
- package/dist/commands/shared/daemonErrorHandler.js.map +1 -0
- package/dist/commands/shared/{daemonSessionController.d.ts → startHelpers.d.ts} +7 -1
- package/dist/commands/shared/startHelpers.d.ts.map +1 -0
- package/dist/commands/shared/{daemonSessionController.js → startHelpers.js} +13 -5
- package/dist/commands/shared/startHelpers.js.map +1 -0
- package/dist/commands/shared/validation.d.ts +44 -0
- package/dist/commands/shared/validation.d.ts.map +1 -0
- package/dist/commands/shared/validation.js +68 -0
- package/dist/commands/shared/validation.js.map +1 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +9 -25
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +6 -4
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +5 -16
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts.map +1 -1
- package/dist/commands/tail.js +49 -44
- package/dist/commands/tail.js.map +1 -1
- package/dist/commands/types.d.ts +43 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +8 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +3 -1
- package/dist/commands.js.map +1 -1
- package/dist/connection/__tests__/cdp.contract.test.js +7 -7
- package/dist/connection/__tests__/cdp.contract.test.js.map +1 -1
- package/dist/connection/__tests__/handlers.unit.test.d.ts +11 -0
- package/dist/connection/__tests__/handlers.unit.test.d.ts.map +1 -0
- package/dist/connection/__tests__/handlers.unit.test.js +220 -0
- package/dist/connection/__tests__/handlers.unit.test.js.map +1 -0
- package/dist/connection/__tests__/pageReadiness.contract.test.d.ts +14 -0
- package/dist/connection/__tests__/pageReadiness.contract.test.d.ts.map +1 -0
- package/dist/connection/__tests__/pageReadiness.contract.test.js +382 -0
- package/dist/connection/__tests__/pageReadiness.contract.test.js.map +1 -0
- package/dist/connection/__tests__/portReservation.contract.test.d.ts +14 -0
- package/dist/connection/__tests__/portReservation.contract.test.d.ts.map +1 -0
- package/dist/connection/__tests__/portReservation.contract.test.js +250 -0
- package/dist/connection/__tests__/portReservation.contract.test.js.map +1 -0
- package/dist/connection/cdp.d.ts +34 -11
- package/dist/connection/cdp.d.ts.map +1 -1
- package/dist/connection/cdp.js +61 -45
- package/dist/connection/cdp.js.map +1 -1
- package/dist/connection/config.d.ts +63 -0
- package/dist/connection/config.d.ts.map +1 -0
- package/dist/connection/config.js +46 -0
- package/dist/connection/config.js.map +1 -0
- package/dist/connection/errors.d.ts +6 -21
- package/dist/connection/errors.d.ts.map +1 -1
- package/dist/connection/errors.js +7 -26
- package/dist/connection/errors.js.map +1 -1
- package/dist/connection/events.d.ts +30 -0
- package/dist/connection/events.d.ts.map +1 -0
- package/dist/connection/events.js +8 -0
- package/dist/connection/events.js.map +1 -0
- package/dist/connection/handlers.d.ts +3 -5
- package/dist/connection/handlers.d.ts.map +1 -1
- package/dist/connection/handlers.js +10 -12
- package/dist/connection/handlers.js.map +1 -1
- package/dist/connection/launcher/binaryResolver.d.ts +40 -0
- package/dist/connection/launcher/binaryResolver.d.ts.map +1 -0
- package/dist/connection/launcher/binaryResolver.js +78 -0
- package/dist/connection/launcher/binaryResolver.js.map +1 -0
- package/dist/connection/launcher/flagsBuilder.d.ts +64 -0
- package/dist/connection/launcher/flagsBuilder.d.ts.map +1 -0
- package/dist/connection/launcher/flagsBuilder.js +84 -0
- package/dist/connection/launcher/flagsBuilder.js.map +1 -0
- package/dist/connection/launcher/preferencesLoader.d.ts +74 -0
- package/dist/connection/launcher/preferencesLoader.d.ts.map +1 -0
- package/dist/connection/launcher/preferencesLoader.js +89 -0
- package/dist/connection/launcher/preferencesLoader.js.map +1 -0
- package/dist/connection/launcher.d.ts +24 -1
- package/dist/connection/launcher.d.ts.map +1 -1
- package/dist/connection/launcher.js +30 -205
- package/dist/connection/launcher.js.map +1 -1
- package/dist/connection/pageReadiness.d.ts +8 -8
- package/dist/connection/pageReadiness.d.ts.map +1 -1
- package/dist/connection/pageReadiness.js +36 -52
- package/dist/connection/pageReadiness.js.map +1 -1
- package/dist/connection/portReservation.d.ts +40 -0
- package/dist/connection/portReservation.d.ts.map +1 -0
- package/dist/connection/portReservation.js +55 -0
- package/dist/connection/portReservation.js.map +1 -0
- package/dist/connection/typed-cdp.d.ts +2 -1
- package/dist/connection/typed-cdp.d.ts.map +1 -1
- package/dist/connection/typed-cdp.js.map +1 -1
- package/dist/connection/types.d.ts +103 -0
- package/dist/connection/types.d.ts.map +1 -0
- package/dist/connection/types.js +8 -0
- package/dist/connection/types.js.map +1 -0
- package/dist/constants.d.ts +0 -83
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +0 -83
- package/dist/constants.js.map +1 -1
- package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts +8 -0
- package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/JsonlParser.unit.test.js +140 -0
- package/dist/daemon/__tests__/JsonlParser.unit.test.js.map +1 -0
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts +8 -0
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.js +276 -0
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.js.map +1 -0
- package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts +8 -0
- package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/TelemetryStore.unit.test.js +290 -0
- package/dist/daemon/__tests__/TelemetryStore.unit.test.js.map +1 -0
- package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts +8 -0
- package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts.map +1 -0
- package/dist/daemon/__tests__/commandRegistry.contract.test.js +384 -0
- package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +1 -0
- package/dist/daemon/__tests__/ipcServer.contract.test.js +2 -1
- package/dist/daemon/__tests__/ipcServer.contract.test.js.map +1 -1
- package/dist/daemon/errors.d.ts +65 -0
- package/dist/daemon/errors.d.ts.map +1 -0
- package/dist/daemon/errors.js +82 -0
- package/dist/daemon/errors.js.map +1 -0
- package/dist/daemon/handlers/CommandHandlers.d.ts +32 -0
- package/dist/daemon/handlers/CommandHandlers.d.ts.map +1 -0
- package/dist/daemon/handlers/CommandHandlers.js +93 -0
- package/dist/daemon/handlers/CommandHandlers.js.map +1 -0
- package/dist/daemon/handlers/QueryHandlers.d.ts +35 -0
- package/dist/daemon/handlers/QueryHandlers.d.ts.map +1 -0
- package/dist/daemon/handlers/QueryHandlers.js +176 -0
- package/dist/daemon/handlers/QueryHandlers.js.map +1 -0
- package/dist/daemon/handlers/SessionHandlers.d.ts +32 -0
- package/dist/daemon/handlers/SessionHandlers.d.ts.map +1 -0
- package/dist/daemon/handlers/SessionHandlers.js +227 -0
- package/dist/daemon/handlers/SessionHandlers.js.map +1 -0
- package/dist/daemon/handlers/pendingRequests.d.ts +50 -0
- package/dist/daemon/handlers/pendingRequests.d.ts.map +1 -0
- package/dist/daemon/handlers/pendingRequests.js +57 -0
- package/dist/daemon/handlers/pendingRequests.js.map +1 -0
- package/dist/daemon/handlers/requestHandlers.d.ts +51 -0
- package/dist/daemon/handlers/requestHandlers.d.ts.map +1 -0
- package/dist/daemon/handlers/requestHandlers.js +61 -0
- package/dist/daemon/handlers/requestHandlers.js.map +1 -0
- package/dist/daemon/handlers/responseHandler.d.ts +42 -0
- package/dist/daemon/handlers/responseHandler.d.ts.map +1 -0
- package/dist/daemon/handlers/responseHandler.js +195 -0
- package/dist/daemon/handlers/responseHandler.js.map +1 -0
- package/dist/daemon/ipcServer.d.ts +19 -41
- package/dist/daemon/ipcServer.d.ts.map +1 -1
- package/dist/daemon/ipcServer.js +83 -655
- package/dist/daemon/ipcServer.js.map +1 -1
- package/dist/daemon/launcher.d.ts.map +1 -1
- package/dist/daemon/launcher.js +6 -3
- package/dist/daemon/launcher.js.map +1 -1
- package/dist/daemon/lifecycle/cdpSetup.d.ts +24 -0
- package/dist/daemon/lifecycle/cdpSetup.d.ts.map +1 -0
- package/dist/daemon/lifecycle/cdpSetup.js +59 -0
- package/dist/daemon/lifecycle/cdpSetup.js.map +1 -0
- package/dist/daemon/lifecycle/chromeConnection.d.ts +17 -0
- package/dist/daemon/lifecycle/chromeConnection.d.ts.map +1 -0
- package/dist/daemon/lifecycle/chromeConnection.js +80 -0
- package/dist/daemon/lifecycle/chromeConnection.js.map +1 -0
- package/dist/daemon/lifecycle/signalHandlers.d.ts +14 -0
- package/dist/daemon/lifecycle/signalHandlers.d.ts.map +1 -0
- package/dist/daemon/lifecycle/signalHandlers.js +35 -0
- package/dist/daemon/lifecycle/signalHandlers.js.map +1 -0
- package/dist/daemon/lifecycle/workerCleanup.d.ts +27 -0
- package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -0
- package/dist/daemon/lifecycle/workerCleanup.js +144 -0
- package/dist/daemon/lifecycle/workerCleanup.js.map +1 -0
- package/dist/daemon/lifecycle/workerConfig.d.ts +14 -0
- package/dist/daemon/lifecycle/workerConfig.d.ts.map +1 -0
- package/dist/daemon/lifecycle/workerConfig.js +66 -0
- package/dist/daemon/lifecycle/workerConfig.js.map +1 -0
- package/dist/daemon/lifecycle/workerIpc.d.ts +14 -0
- package/dist/daemon/lifecycle/workerIpc.d.ts.map +1 -0
- package/dist/daemon/lifecycle/workerIpc.js +87 -0
- package/dist/daemon/lifecycle/workerIpc.js.map +1 -0
- package/dist/daemon/server/JsonlParser.d.ts +31 -0
- package/dist/daemon/server/JsonlParser.d.ts.map +1 -0
- package/dist/daemon/server/JsonlParser.js +57 -0
- package/dist/daemon/server/JsonlParser.js.map +1 -0
- package/dist/daemon/server/SocketServer.d.ts.map +1 -1
- package/dist/daemon/server/SocketServer.js +2 -2
- package/dist/daemon/server/SocketServer.js.map +1 -1
- package/dist/daemon/server/WorkerManager.d.ts +3 -3
- package/dist/daemon/server/WorkerManager.d.ts.map +1 -1
- package/dist/daemon/server/WorkerManager.js +10 -19
- package/dist/daemon/server/WorkerManager.js.map +1 -1
- package/dist/daemon/services/SessionService.d.ts +87 -0
- package/dist/daemon/services/SessionService.d.ts.map +1 -0
- package/dist/daemon/services/SessionService.js +45 -0
- package/dist/daemon/services/SessionService.js.map +1 -0
- package/dist/daemon/startSession.d.ts.map +1 -1
- package/dist/daemon/startSession.js +54 -31
- package/dist/daemon/startSession.js.map +1 -1
- package/dist/daemon/worker/commandRegistry.d.ts +1 -1
- package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
- package/dist/daemon/worker/commandRegistry.js +20 -215
- package/dist/daemon/worker/commandRegistry.js.map +1 -1
- package/dist/daemon/worker.d.ts +3 -12
- package/dist/daemon/worker.d.ts.map +1 -1
- package/dist/daemon/worker.js +47 -367
- package/dist/daemon/worker.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ipc/__tests__/client.contract.test.d.ts +0 -15
- package/dist/ipc/__tests__/client.contract.test.d.ts.map +1 -1
- package/dist/ipc/__tests__/client.contract.test.js +8 -23
- package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
- package/dist/ipc/__tests__/errors.unit.test.d.ts +7 -0
- package/dist/ipc/__tests__/errors.unit.test.d.ts.map +1 -0
- package/dist/ipc/__tests__/errors.unit.test.js +77 -0
- package/dist/ipc/__tests__/errors.unit.test.js.map +1 -0
- package/dist/ipc/__tests__/guards.unit.test.d.ts +7 -0
- package/dist/ipc/__tests__/guards.unit.test.d.ts.map +1 -0
- package/dist/ipc/__tests__/guards.unit.test.js +73 -0
- package/dist/ipc/__tests__/guards.unit.test.js.map +1 -0
- package/dist/ipc/__tests__/jsonl.unit.test.d.ts +7 -0
- package/dist/ipc/__tests__/jsonl.unit.test.d.ts.map +1 -0
- package/dist/ipc/__tests__/jsonl.unit.test.js +85 -0
- package/dist/ipc/__tests__/jsonl.unit.test.js.map +1 -0
- package/dist/ipc/__tests__/validation.unit.test.d.ts +7 -0
- package/dist/ipc/__tests__/validation.unit.test.d.ts.map +1 -0
- package/dist/ipc/__tests__/validation.unit.test.js +60 -0
- package/dist/ipc/__tests__/validation.unit.test.js.map +1 -0
- package/dist/ipc/client.d.ts +93 -84
- package/dist/ipc/client.d.ts.map +1 -1
- package/dist/ipc/client.js +121 -192
- package/dist/ipc/client.js.map +1 -1
- package/dist/ipc/index.d.ts +17 -0
- package/dist/ipc/index.d.ts.map +1 -0
- package/dist/ipc/index.js +23 -0
- package/dist/ipc/index.js.map +1 -0
- package/dist/ipc/protocol/commands.d.ts +144 -0
- package/dist/ipc/protocol/commands.d.ts.map +1 -0
- package/dist/ipc/protocol/commands.js +23 -0
- package/dist/ipc/protocol/commands.js.map +1 -0
- package/dist/ipc/protocol/guards.d.ts +47 -0
- package/dist/ipc/protocol/guards.d.ts.map +1 -0
- package/dist/ipc/protocol/guards.js +62 -0
- package/dist/ipc/protocol/guards.js.map +1 -0
- package/dist/ipc/protocol/index.d.ts +9 -0
- package/dist/ipc/protocol/index.d.ts.map +1 -0
- package/dist/ipc/protocol/index.js +8 -0
- package/dist/ipc/protocol/index.js.map +1 -0
- package/dist/ipc/protocol/messages.d.ts +64 -0
- package/dist/ipc/protocol/messages.d.ts.map +1 -0
- package/dist/ipc/protocol/messages.js +8 -0
- package/dist/ipc/protocol/messages.js.map +1 -0
- package/dist/ipc/session/errors.d.ts +25 -0
- package/dist/ipc/session/errors.d.ts.map +1 -0
- package/dist/ipc/{types.js → session/errors.js} +11 -6
- package/dist/ipc/session/errors.js.map +1 -0
- package/dist/ipc/session/index.d.ts +16 -0
- package/dist/ipc/session/index.d.ts.map +1 -0
- package/dist/ipc/session/index.js +7 -0
- package/dist/ipc/session/index.js.map +1 -0
- package/dist/ipc/session/lifecycle.d.ts +125 -0
- package/dist/ipc/session/lifecycle.d.ts.map +1 -0
- package/dist/ipc/session/lifecycle.js +7 -0
- package/dist/ipc/session/lifecycle.js.map +1 -0
- package/dist/ipc/session/queries.d.ts +94 -0
- package/dist/ipc/session/queries.d.ts.map +1 -0
- package/dist/ipc/session/queries.js +7 -0
- package/dist/ipc/session/queries.js.map +1 -0
- package/dist/ipc/session/types.d.ts +28 -0
- package/dist/ipc/session/types.d.ts.map +1 -0
- package/dist/ipc/session/types.js +7 -0
- package/dist/ipc/session/types.js.map +1 -0
- package/dist/ipc/transport/IPCError.d.ts +82 -0
- package/dist/ipc/transport/IPCError.d.ts.map +1 -0
- package/dist/ipc/transport/IPCError.js +109 -0
- package/dist/ipc/transport/IPCError.js.map +1 -0
- package/dist/ipc/transport/errors.d.ts +11 -0
- package/dist/ipc/transport/errors.d.ts.map +1 -0
- package/dist/ipc/transport/errors.js +28 -0
- package/dist/ipc/transport/errors.js.map +1 -0
- package/dist/ipc/transport/index.d.ts +16 -0
- package/dist/ipc/transport/index.d.ts.map +1 -0
- package/dist/ipc/transport/index.js +77 -0
- package/dist/ipc/transport/index.js.map +1 -0
- package/dist/ipc/transport/jsonl.d.ts +23 -0
- package/dist/ipc/transport/jsonl.d.ts.map +1 -0
- package/dist/ipc/transport/jsonl.js +36 -0
- package/dist/ipc/transport/jsonl.js.map +1 -0
- package/dist/ipc/transport/socket.d.ts +27 -0
- package/dist/ipc/transport/socket.d.ts.map +1 -0
- package/dist/ipc/transport/socket.js +49 -0
- package/dist/ipc/transport/socket.js.map +1 -0
- package/dist/ipc/transport/validation.d.ts +21 -0
- package/dist/ipc/transport/validation.d.ts.map +1 -0
- package/dist/ipc/transport/validation.js +23 -0
- package/dist/ipc/transport/validation.js.map +1 -0
- package/dist/ipc/utils/errors.d.ts +25 -0
- package/dist/ipc/utils/errors.d.ts.map +1 -0
- package/dist/ipc/utils/errors.js +29 -0
- package/dist/ipc/utils/errors.js.map +1 -0
- package/dist/ipc/utils/index.d.ts +12 -0
- package/dist/ipc/utils/index.d.ts.map +1 -0
- package/dist/ipc/utils/index.js +11 -0
- package/dist/ipc/utils/index.js.map +1 -0
- package/dist/ipc/utils/requestId.d.ts +23 -0
- package/dist/ipc/utils/requestId.d.ts.map +1 -0
- package/dist/ipc/utils/requestId.js +27 -0
- package/dist/ipc/utils/requestId.js.map +1 -0
- package/dist/ipc/utils/responseValidator.d.ts.map +1 -0
- package/dist/ipc/{responseValidator.js → utils/responseValidator.js} +2 -1
- package/dist/ipc/utils/responseValidator.js.map +1 -0
- package/dist/ipc/utils/session.d.ts +36 -0
- package/dist/ipc/utils/session.d.ts.map +1 -0
- package/dist/ipc/utils/session.js +37 -0
- package/dist/ipc/utils/session.js.map +1 -0
- package/dist/ipc/utils/types.d.ts +17 -0
- package/dist/ipc/utils/types.d.ts.map +1 -0
- package/dist/ipc/utils/types.js +7 -0
- package/dist/ipc/utils/types.js.map +1 -0
- package/dist/session/__tests__/chrome-cache.contract.test.d.ts +7 -0
- package/dist/session/__tests__/chrome-cache.contract.test.d.ts.map +1 -0
- package/dist/session/__tests__/chrome-cache.contract.test.js +77 -0
- package/dist/session/__tests__/chrome-cache.contract.test.js.map +1 -0
- package/dist/session/__tests__/cleanup.contract.test.d.ts +7 -0
- package/dist/session/__tests__/cleanup.contract.test.d.ts.map +1 -0
- package/dist/session/__tests__/cleanup.contract.test.js +84 -0
- package/dist/session/__tests__/cleanup.contract.test.js.map +1 -0
- package/dist/session/__tests__/lock.contract.test.d.ts +7 -0
- package/dist/session/__tests__/lock.contract.test.d.ts.map +1 -0
- package/dist/session/__tests__/lock.contract.test.js +77 -0
- package/dist/session/__tests__/lock.contract.test.js.map +1 -0
- package/dist/session/__tests__/metadata.contract.test.d.ts +7 -0
- package/dist/session/__tests__/metadata.contract.test.d.ts.map +1 -0
- package/dist/session/__tests__/metadata.contract.test.js +87 -0
- package/dist/session/__tests__/metadata.contract.test.js.map +1 -0
- package/dist/session/chrome.d.ts +20 -0
- package/dist/session/chrome.d.ts.map +1 -1
- package/dist/session/chrome.js +80 -16
- package/dist/session/chrome.js.map +1 -1
- package/dist/session/cleanup.d.ts +15 -2
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +100 -72
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/lock.d.ts.map +1 -1
- package/dist/session/lock.js +101 -90
- package/dist/session/lock.js.map +1 -1
- package/dist/session/metadata.d.ts +10 -3
- package/dist/session/metadata.d.ts.map +1 -1
- package/dist/session/metadata.js +24 -6
- package/dist/session/metadata.js.map +1 -1
- package/dist/session/paths.d.ts +0 -9
- package/dist/session/paths.d.ts.map +1 -1
- package/dist/session/paths.js +0 -11
- package/dist/session/paths.js.map +1 -1
- package/dist/session/pid.d.ts +15 -0
- package/dist/session/pid.d.ts.map +1 -1
- package/dist/session/pid.js +39 -21
- package/dist/session/pid.js.map +1 -1
- package/dist/session/process.d.ts +4 -41
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +4 -85
- package/dist/session/process.js.map +1 -1
- package/dist/session/statusData.d.ts +50 -0
- package/dist/session/statusData.d.ts.map +1 -0
- package/dist/session/statusData.js +51 -0
- package/dist/session/statusData.js.map +1 -0
- package/dist/telemetry/__tests__/navigation.contract.test.d.ts +8 -0
- package/dist/telemetry/__tests__/navigation.contract.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/navigation.contract.test.js +211 -0
- package/dist/telemetry/__tests__/navigation.contract.test.js.map +1 -0
- package/dist/telemetry/__tests__/network.contract.test.d.ts +0 -20
- package/dist/telemetry/__tests__/network.contract.test.d.ts.map +1 -1
- package/dist/telemetry/__tests__/network.contract.test.js +2 -64
- package/dist/telemetry/__tests__/network.contract.test.js.map +1 -1
- package/dist/telemetry/__tests__/utils.unit.test.d.ts +7 -0
- package/dist/telemetry/__tests__/utils.unit.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/utils.unit.test.js +91 -0
- package/dist/telemetry/__tests__/utils.unit.test.js.map +1 -0
- package/dist/telemetry/console.d.ts.map +1 -1
- package/dist/telemetry/console.js +19 -28
- package/dist/telemetry/console.js.map +1 -1
- package/dist/telemetry/dialogs.d.ts.map +1 -1
- package/dist/telemetry/dialogs.js +4 -8
- package/dist/telemetry/dialogs.js.map +1 -1
- package/dist/telemetry/dom.d.ts.map +1 -1
- package/dist/telemetry/dom.js +51 -59
- package/dist/telemetry/dom.js.map +1 -1
- package/dist/telemetry/filters.d.ts +5 -18
- package/dist/telemetry/filters.d.ts.map +1 -1
- package/dist/telemetry/filters.js +36 -56
- package/dist/telemetry/filters.js.map +1 -1
- package/dist/telemetry/navigation.d.ts.map +1 -1
- package/dist/telemetry/navigation.js +5 -8
- package/dist/telemetry/navigation.js.map +1 -1
- package/dist/telemetry/network.d.ts.map +1 -1
- package/dist/telemetry/network.js +105 -104
- package/dist/telemetry/network.js.map +1 -1
- package/dist/telemetry/utils.d.ts +85 -0
- package/dist/telemetry/utils.d.ts.map +1 -0
- package/dist/telemetry/utils.js +138 -0
- package/dist/telemetry/utils.js.map +1 -0
- package/dist/types/dom.d.ts +66 -0
- package/dist/types/dom.d.ts.map +1 -0
- package/dist/types/dom.js +8 -0
- package/dist/types/dom.js.map +1 -0
- package/dist/types.d.ts +15 -83
- package/dist/types.d.ts.map +1 -1
- package/dist/{commands/shared → ui}/OutputBuilder.d.ts +10 -2
- package/dist/ui/OutputBuilder.d.ts.map +1 -0
- package/dist/{commands/shared → ui}/OutputBuilder.js +8 -2
- package/dist/ui/OutputBuilder.js.map +1 -0
- package/dist/ui/errors/CommandError.d.ts +16 -2
- package/dist/ui/errors/CommandError.d.ts.map +1 -1
- package/dist/ui/errors/CommandError.js +2 -1
- package/dist/ui/errors/CommandError.js.map +1 -1
- package/dist/ui/errors/index.d.ts +2 -3
- package/dist/ui/errors/index.d.ts.map +1 -1
- package/dist/ui/errors/index.js +1 -3
- package/dist/ui/errors/index.js.map +1 -1
- package/dist/ui/errors/utils.d.ts +6 -0
- package/dist/ui/errors/utils.d.ts.map +1 -1
- package/dist/ui/errors/utils.js +8 -3
- package/dist/ui/errors/utils.js.map +1 -1
- package/dist/ui/formatters/dom.d.ts +3 -18
- package/dist/ui/formatters/dom.d.ts.map +1 -1
- package/dist/ui/formatters/dom.js +4 -27
- package/dist/ui/formatters/dom.js.map +1 -1
- package/dist/ui/formatters/preview.d.ts +8 -8
- package/dist/ui/formatters/preview.d.ts.map +1 -1
- package/dist/ui/formatters/preview.js +18 -13
- package/dist/ui/formatters/preview.js.map +1 -1
- package/dist/ui/formatters/status.d.ts +1 -1
- package/dist/ui/formatters/status.d.ts.map +1 -1
- package/dist/ui/formatters/status.js +8 -30
- package/dist/ui/formatters/status.js.map +1 -1
- package/dist/ui/formatting.d.ts +2 -270
- package/dist/ui/formatting.d.ts.map +1 -1
- package/dist/ui/formatting.js +8 -331
- package/dist/ui/formatting.js.map +1 -1
- package/dist/ui/logging/index.d.ts +1 -1
- package/dist/ui/logging/index.d.ts.map +1 -1
- package/dist/ui/logging/index.js +1 -1
- package/dist/ui/logging/index.js.map +1 -1
- package/dist/ui/logging/logger.d.ts +3 -23
- package/dist/ui/logging/logger.d.ts.map +1 -1
- package/dist/ui/logging/logger.js +2 -27
- package/dist/ui/logging/logger.js.map +1 -1
- package/dist/ui/messages/chrome.d.ts +15 -7
- package/dist/ui/messages/chrome.d.ts.map +1 -1
- package/dist/ui/messages/chrome.js +23 -32
- package/dist/ui/messages/chrome.js.map +1 -1
- package/dist/ui/messages/commands.d.ts +2 -19
- package/dist/ui/messages/commands.d.ts.map +1 -1
- package/dist/ui/messages/commands.js +5 -51
- package/dist/ui/messages/commands.js.map +1 -1
- package/dist/ui/messages/consoleMessages.d.ts +1 -1
- package/dist/ui/messages/consoleMessages.d.ts.map +1 -1
- package/dist/ui/messages/consoleMessages.js +3 -6
- package/dist/ui/messages/consoleMessages.js.map +1 -1
- package/dist/ui/messages/debug.d.ts +0 -14
- package/dist/ui/messages/debug.d.ts.map +1 -1
- package/dist/ui/messages/debug.js +0 -18
- package/dist/ui/messages/debug.js.map +1 -1
- package/dist/ui/messages/errors.d.ts +0 -34
- package/dist/ui/messages/errors.d.ts.map +1 -1
- package/dist/ui/messages/errors.js +3 -81
- package/dist/ui/messages/errors.js.map +1 -1
- package/dist/ui/messages/internal.d.ts +0 -7
- package/dist/ui/messages/internal.d.ts.map +1 -1
- package/dist/ui/messages/internal.js +0 -12
- package/dist/ui/messages/internal.js.map +1 -1
- package/dist/ui/messages/preview.d.ts +14 -1
- package/dist/ui/messages/preview.d.ts.map +1 -1
- package/dist/ui/messages/preview.js +24 -7
- 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 +7 -23
- package/dist/ui/messages/session.js.map +1 -1
- package/dist/ui/messages/validation.d.ts.map +1 -1
- package/dist/ui/messages/validation.js +7 -8
- package/dist/ui/messages/validation.js.map +1 -1
- package/dist/utils/__tests__/atomicFile.test.d.ts +2 -0
- package/dist/utils/__tests__/atomicFile.test.d.ts.map +1 -0
- package/dist/utils/__tests__/atomicFile.test.js +43 -0
- package/dist/utils/__tests__/atomicFile.test.js.map +1 -0
- package/dist/utils/__tests__/objects.test.d.ts +2 -0
- package/dist/utils/__tests__/objects.test.d.ts.map +1 -0
- package/dist/utils/__tests__/objects.test.js +50 -0
- package/dist/utils/__tests__/objects.test.js.map +1 -0
- package/dist/utils/__tests__/session.contract.test.js +13 -3
- package/dist/utils/__tests__/session.contract.test.js.map +1 -1
- package/dist/utils/__tests__/url.test.d.ts +2 -0
- package/dist/utils/__tests__/url.test.d.ts.map +1 -0
- package/dist/utils/__tests__/url.test.js +42 -0
- package/dist/utils/__tests__/url.test.js.map +1 -0
- package/dist/utils/atomicFile.d.ts +31 -5
- package/dist/utils/atomicFile.d.ts.map +1 -1
- package/dist/utils/atomicFile.js +52 -13
- package/dist/utils/atomicFile.js.map +1 -1
- package/dist/utils/concurrency.d.ts +54 -0
- package/dist/utils/concurrency.d.ts.map +1 -0
- package/dist/utils/concurrency.js +78 -0
- package/dist/utils/concurrency.js.map +1 -0
- package/dist/utils/daemonErrors.d.ts +60 -0
- package/dist/utils/daemonErrors.d.ts.map +1 -0
- package/dist/utils/daemonErrors.js +58 -0
- package/dist/utils/daemonErrors.js.map +1 -0
- package/dist/utils/errors.d.ts +28 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +33 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/exitCodes.d.ts +41 -5
- package/dist/utils/exitCodes.d.ts.map +1 -1
- package/dist/utils/exitCodes.js +43 -9
- package/dist/utils/exitCodes.js.map +1 -1
- package/dist/utils/http.d.ts +9 -4
- package/dist/utils/http.d.ts.map +1 -1
- package/dist/utils/http.js +44 -10
- package/dist/utils/http.js.map +1 -1
- package/dist/utils/levenshtein.d.ts +45 -0
- package/dist/utils/levenshtein.d.ts.map +1 -0
- package/dist/utils/levenshtein.js +85 -0
- package/dist/utils/levenshtein.js.map +1 -0
- package/dist/utils/objects.d.ts +16 -1
- package/dist/utils/objects.d.ts.map +1 -1
- package/dist/utils/objects.js +16 -1
- package/dist/utils/objects.js.map +1 -1
- package/dist/utils/process.d.ts +45 -0
- package/dist/utils/process.d.ts.map +1 -0
- package/dist/utils/process.js +91 -0
- package/dist/utils/process.js.map +1 -0
- package/dist/utils/url.d.ts +10 -3
- package/dist/utils/url.d.ts.map +1 -1
- package/dist/utils/url.js +42 -29
- package/dist/utils/url.js.map +1 -1
- package/dist/utils/validation.d.ts +101 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +131 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +1 -1
- package/dist/commands/dom.d.ts.map +0 -1
- package/dist/commands/dom.js.map +0 -1
- package/dist/commands/domEvalHelpers.d.ts.map +0 -1
- package/dist/commands/domEvalHelpers.js.map +0 -1
- package/dist/commands/domOptionsBuilder.d.ts +0 -67
- package/dist/commands/domOptionsBuilder.d.ts.map +0 -1
- package/dist/commands/domOptionsBuilder.js +0 -86
- package/dist/commands/domOptionsBuilder.js.map +0 -1
- package/dist/commands/domSelectorParser.d.ts +0 -20
- package/dist/commands/domSelectorParser.d.ts.map +0 -1
- package/dist/commands/domSelectorParser.js +0 -20
- package/dist/commands/domSelectorParser.js.map +0 -1
- package/dist/commands/shared/OutputBuilder.d.ts.map +0 -1
- package/dist/commands/shared/OutputBuilder.js.map +0 -1
- package/dist/commands/shared/daemonSessionController.d.ts.map +0 -1
- package/dist/commands/shared/daemonSessionController.js.map +0 -1
- package/dist/commands/shared/sessionController.d.ts +0 -21
- package/dist/commands/shared/sessionController.d.ts.map +0 -1
- package/dist/commands/shared/sessionController.js +0 -54
- package/dist/commands/shared/sessionController.js.map +0 -1
- package/dist/connection/__tests__/finder.contract.test.d.ts +0 -2
- package/dist/connection/__tests__/finder.contract.test.d.ts.map +0 -1
- package/dist/connection/__tests__/finder.contract.test.js +0 -239
- package/dist/connection/__tests__/finder.contract.test.js.map +0 -1
- package/dist/connection/domOperations.d.ts +0 -48
- package/dist/connection/domOperations.d.ts.map +0 -1
- package/dist/connection/domOperations.js +0 -106
- package/dist/connection/domOperations.js.map +0 -1
- package/dist/connection/finder.d.ts +0 -12
- package/dist/connection/finder.d.ts.map +0 -1
- package/dist/connection/finder.js +0 -17
- package/dist/connection/finder.js.map +0 -1
- package/dist/ipc/commands.d.ts +0 -260
- package/dist/ipc/commands.d.ts.map +0 -1
- package/dist/ipc/commands.js +0 -77
- package/dist/ipc/commands.js.map +0 -1
- package/dist/ipc/responseValidator.d.ts.map +0 -1
- package/dist/ipc/responseValidator.js.map +0 -1
- package/dist/ipc/types.d.ts +0 -226
- package/dist/ipc/types.d.ts.map +0 -1
- package/dist/ipc/types.js.map +0 -1
- package/dist/session/fileOps.d.ts +0 -25
- package/dist/session/fileOps.d.ts.map +0 -1
- package/dist/session/fileOps.js +0 -39
- package/dist/session/fileOps.js.map +0 -1
- package/dist/session/queryCache.d.ts +0 -36
- package/dist/session/queryCache.d.ts.map +0 -1
- package/dist/session/queryCache.js +0 -66
- package/dist/session/queryCache.js.map +0 -1
- /package/dist/ipc/{responseValidator.d.ts → utils/responseValidator.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/connection/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/connection/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;;;GAKG;AACH,8BAAsB,eAAgB,SAAQ,KAAK;IACjD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEvB,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAO3C;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAmB,SAAQ,eAAe;IACrD,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,QAAQ,MAAqC;CACvD;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IACpD,QAAQ,CAAC,IAAI,yBAAyB;IACtC,QAAQ,CAAC,QAAQ,MAAoC;CACtD;AAED;;;;;;GAMG;AACH,qBAAa,eAAgB,SAAQ,eAAe;IAClD,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,QAAQ,MAA0B;CAC5C;AAED;;;;;GAKG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides structured error handling for CDP connections and Chrome launches.
|
|
5
5
|
*/
|
|
6
|
+
import { EXIT_CODES } from '../utils/exitCodes.js';
|
|
6
7
|
/**
|
|
7
8
|
* Base error class for all connection-related errors.
|
|
8
9
|
*
|
|
@@ -28,7 +29,7 @@ export class ConnectionError extends Error {
|
|
|
28
29
|
*/
|
|
29
30
|
export class CDPConnectionError extends ConnectionError {
|
|
30
31
|
code = 'CDP_CONNECTION_ERROR';
|
|
31
|
-
exitCode =
|
|
32
|
+
exitCode = EXIT_CODES.CDP_CONNECTION_FAILURE;
|
|
32
33
|
}
|
|
33
34
|
/**
|
|
34
35
|
* Chrome launch failed.
|
|
@@ -40,7 +41,7 @@ export class CDPConnectionError extends ConnectionError {
|
|
|
40
41
|
*/
|
|
41
42
|
export class ChromeLaunchError extends ConnectionError {
|
|
42
43
|
code = 'CHROME_LAUNCH_ERROR';
|
|
43
|
-
exitCode =
|
|
44
|
+
exitCode = EXIT_CODES.CHROME_LAUNCH_FAILURE;
|
|
44
45
|
}
|
|
45
46
|
/**
|
|
46
47
|
* CDP command timed out.
|
|
@@ -51,33 +52,13 @@ export class ChromeLaunchError extends ConnectionError {
|
|
|
51
52
|
*/
|
|
52
53
|
export class CDPTimeoutError extends ConnectionError {
|
|
53
54
|
code = 'CDP_TIMEOUT_ERROR';
|
|
54
|
-
exitCode =
|
|
55
|
+
exitCode = EXIT_CODES.CDP_TIMEOUT;
|
|
55
56
|
}
|
|
56
57
|
/**
|
|
57
58
|
* Extract error message from unknown error type.
|
|
58
59
|
*
|
|
59
|
-
*
|
|
60
|
-
* -
|
|
61
|
-
* - Unknown types → String(error)
|
|
62
|
-
*
|
|
63
|
-
* Useful for error handling when error type is unknown.
|
|
64
|
-
*
|
|
65
|
-
* @param error - Error of unknown type
|
|
66
|
-
* @returns Error message string
|
|
67
|
-
*
|
|
68
|
-
* @example
|
|
69
|
-
* ```typescript
|
|
70
|
-
* try {
|
|
71
|
-
* await someOperation();
|
|
72
|
-
* } catch (error) {
|
|
73
|
-
* throw new ChromeLaunchError(`Failed: ${getErrorMessage(error)}`, error);
|
|
74
|
-
* }
|
|
75
|
-
* ```
|
|
60
|
+
* @deprecated Import from \@/utils/errors.ts instead.
|
|
61
|
+
* Re-exported for backward compatibility.
|
|
76
62
|
*/
|
|
77
|
-
export
|
|
78
|
-
if (error instanceof Error) {
|
|
79
|
-
return error.message;
|
|
80
|
-
}
|
|
81
|
-
return String(error);
|
|
82
|
-
}
|
|
63
|
+
export { getErrorMessage } from '../utils/errors.js';
|
|
83
64
|
//# sourceMappingURL=errors.js.map
|
|
@@ -1 +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,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/connection/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;;;;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,UAAU,CAAC,sBAAsB,CAAC;CACvD;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,iBAAkB,SAAQ,eAAe;IAC3C,IAAI,GAAG,qBAAqB,CAAC;IAC7B,QAAQ,GAAG,UAAU,CAAC,qBAAqB,CAAC;CACtD;AAED;;;;;;GAMG;AACH,MAAM,OAAO,eAAgB,SAAQ,eAAe;IACzC,IAAI,GAAG,mBAAmB,CAAC;IAC3B,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC;CAC5C;AAED;;;;;GAKG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CDP Event Source Interface
|
|
3
|
+
*
|
|
4
|
+
* Minimal interface for CDP event handling, decoupling telemetry collectors
|
|
5
|
+
* from CDPConnection implementation details.
|
|
6
|
+
*/
|
|
7
|
+
/** Cleanup function to unregister an event handler. */
|
|
8
|
+
export type EventCleanup = () => void;
|
|
9
|
+
/**
|
|
10
|
+
* Minimal interface for subscribing to CDP events.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const cleanup = events.on('Network.requestWillBeSent', (params) => {
|
|
15
|
+
* console.log('Request:', params.request.url);
|
|
16
|
+
* });
|
|
17
|
+
* cleanup(); // Unregister
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export interface CDPEventSource {
|
|
21
|
+
/**
|
|
22
|
+
* Register an event handler for a specific CDP event.
|
|
23
|
+
*
|
|
24
|
+
* @param event - CDP event name (e.g., 'Network.requestWillBeSent')
|
|
25
|
+
* @param handler - Function to call when event is received
|
|
26
|
+
* @returns Cleanup function to unregister the handler
|
|
27
|
+
*/
|
|
28
|
+
on<T = unknown>(event: string, handler: (params: T) => void): EventCleanup;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/connection/events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,uDAAuD;AACvD,MAAM,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,GAAG,YAAY,CAAC;CAC5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/connection/events.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -16,7 +16,7 @@ type EventParams<T extends keyof ProtocolMapping.Events> = ProtocolMapping.Event
|
|
|
16
16
|
* Supports both legacy untyped usage and new type-safe usage with TypedCDPConnection.
|
|
17
17
|
*/
|
|
18
18
|
export declare class CDPHandlerRegistry {
|
|
19
|
-
private
|
|
19
|
+
private cleanupFunctions;
|
|
20
20
|
/**
|
|
21
21
|
* Register a CDP event handler and track it for cleanup (legacy API).
|
|
22
22
|
*
|
|
@@ -24,7 +24,7 @@ export declare class CDPHandlerRegistry {
|
|
|
24
24
|
* @param event - CDP event name (e.g., 'Network.requestWillBeSent')
|
|
25
25
|
* @param handler - Event handler function
|
|
26
26
|
*
|
|
27
|
-
* @deprecated Use registerTyped() with TypedCDPConnection for type safety
|
|
27
|
+
* @deprecated Since v0.5.0. Use registerTyped() with TypedCDPConnection for type safety. Will be removed in v1.0.0.
|
|
28
28
|
*/
|
|
29
29
|
register<T>(cdp: CDPConnection, event: string, handler: (params: T) => void): void;
|
|
30
30
|
/**
|
|
@@ -48,10 +48,8 @@ export declare class CDPHandlerRegistry {
|
|
|
48
48
|
registerTyped<T extends keyof ProtocolMapping.Events>(typed: TypedCDPConnection, event: T, handler: (params: EventParams<T>) => void): void;
|
|
49
49
|
/**
|
|
50
50
|
* Remove all registered event handlers and clear the registry.
|
|
51
|
-
*
|
|
52
|
-
* @param cdp - CDP connection instance (or TypedCDPConnection.raw)
|
|
53
51
|
*/
|
|
54
|
-
cleanup(
|
|
52
|
+
cleanup(): void;
|
|
55
53
|
/**
|
|
56
54
|
* Get the number of registered handlers.
|
|
57
55
|
*
|
|
@@ -1 +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,
|
|
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,gBAAgB,CAAyB;IAEjD;;;;;;;;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;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;;;OAIG;IACH,IAAI,IAAI,MAAM;CAGf"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Supports both legacy untyped usage and new type-safe usage with TypedCDPConnection.
|
|
8
8
|
*/
|
|
9
9
|
export class CDPHandlerRegistry {
|
|
10
|
-
|
|
10
|
+
cleanupFunctions = [];
|
|
11
11
|
/**
|
|
12
12
|
* Register a CDP event handler and track it for cleanup (legacy API).
|
|
13
13
|
*
|
|
@@ -15,11 +15,11 @@ export class CDPHandlerRegistry {
|
|
|
15
15
|
* @param event - CDP event name (e.g., 'Network.requestWillBeSent')
|
|
16
16
|
* @param handler - Event handler function
|
|
17
17
|
*
|
|
18
|
-
* @deprecated Use registerTyped() with TypedCDPConnection for type safety
|
|
18
|
+
* @deprecated Since v0.5.0. Use registerTyped() with TypedCDPConnection for type safety. Will be removed in v1.0.0.
|
|
19
19
|
*/
|
|
20
20
|
register(cdp, event, handler) {
|
|
21
|
-
const
|
|
22
|
-
this.
|
|
21
|
+
const cleanup = cdp.on(event, handler);
|
|
22
|
+
this.cleanupFunctions.push(cleanup);
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Register a type-safe CDP event handler and track it for cleanup.
|
|
@@ -40,17 +40,15 @@ export class CDPHandlerRegistry {
|
|
|
40
40
|
* ```
|
|
41
41
|
*/
|
|
42
42
|
registerTyped(typed, event, handler) {
|
|
43
|
-
const
|
|
44
|
-
this.
|
|
43
|
+
const cleanup = typed.on(event, handler);
|
|
44
|
+
this.cleanupFunctions.push(cleanup);
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
47
|
* Remove all registered event handlers and clear the registry.
|
|
48
|
-
*
|
|
49
|
-
* @param cdp - CDP connection instance (or TypedCDPConnection.raw)
|
|
50
48
|
*/
|
|
51
|
-
cleanup(
|
|
52
|
-
this.
|
|
53
|
-
this.
|
|
49
|
+
cleanup() {
|
|
50
|
+
this.cleanupFunctions.forEach((cleanup) => cleanup());
|
|
51
|
+
this.cleanupFunctions.length = 0;
|
|
54
52
|
}
|
|
55
53
|
/**
|
|
56
54
|
* Get the number of registered handlers.
|
|
@@ -58,7 +56,7 @@ export class CDPHandlerRegistry {
|
|
|
58
56
|
* @returns Number of active handlers
|
|
59
57
|
*/
|
|
60
58
|
size() {
|
|
61
|
-
return this.
|
|
59
|
+
return this.cleanupFunctions.length;
|
|
62
60
|
}
|
|
63
61
|
}
|
|
64
62
|
//# sourceMappingURL=handlers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/connection/handlers.ts"],"names":[],"mappings":"AAgBA;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACrB,
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/connection/handlers.ts"],"names":[],"mappings":"AAgBA;;;;;;;GAOG;AACH,MAAM,OAAO,kBAAkB;IACrB,gBAAgB,GAAsB,EAAE,CAAC;IAEjD;;;;;;;;OAQG;IACH,QAAQ,CAAI,GAAkB,EAAE,KAAa,EAAE,OAA4B;QACzE,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,aAAa,CACX,KAAyB,EACzB,KAAQ,EACR,OAAyC;QAEzC,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,IAAI;QACF,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chrome binary resolution and validation.
|
|
3
|
+
*
|
|
4
|
+
* Handles resolving Chrome binary path from options or environment variables,
|
|
5
|
+
* and validates that the binary exists and is executable.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Options containing Chrome binary path configuration.
|
|
9
|
+
*/
|
|
10
|
+
export interface BinaryResolverOptions {
|
|
11
|
+
/** Explicit Chrome binary path (overrides CHROME_PATH env var) */
|
|
12
|
+
chromePath?: string | undefined;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Resolve Chrome binary path from options or environment variable.
|
|
16
|
+
*
|
|
17
|
+
* Validates that the resolved binary:
|
|
18
|
+
* - Exists on the filesystem
|
|
19
|
+
* - Is a regular file (not a directory)
|
|
20
|
+
* - Has execute permissions
|
|
21
|
+
*
|
|
22
|
+
* @param options - Configuration with optional chromePath
|
|
23
|
+
* @returns Resolved and validated Chrome binary path, or undefined if not specified
|
|
24
|
+
* @throws ChromeLaunchError if binary path is invalid or not executable
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* // From options
|
|
29
|
+
* const binary = resolveChromeBinary({ chromePath: '/usr/bin/google-chrome' });
|
|
30
|
+
*
|
|
31
|
+
* // From environment variable
|
|
32
|
+
* process.env['CHROME_PATH'] = '/opt/chrome/chrome';
|
|
33
|
+
* const binary = resolveChromeBinary({});
|
|
34
|
+
*
|
|
35
|
+
* // Not specified (returns undefined, launcher will use default)
|
|
36
|
+
* const binary = resolveChromeBinary({});
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare function resolveChromeBinary(options: BinaryResolverOptions): string | undefined;
|
|
40
|
+
//# sourceMappingURL=binaryResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binaryResolver.d.ts","sourceRoot":"","sources":["../../../src/connection/launcher/binaryResolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAeD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAwCtF"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chrome binary resolution and validation.
|
|
3
|
+
*
|
|
4
|
+
* Handles resolving Chrome binary path from options or environment variables,
|
|
5
|
+
* and validates that the binary exists and is executable.
|
|
6
|
+
*/
|
|
7
|
+
import * as fs from 'fs';
|
|
8
|
+
import { getChromeDiagnostics } from '../../connection/diagnostics.js';
|
|
9
|
+
import { ChromeLaunchError, getErrorMessage } from '../../connection/errors.js';
|
|
10
|
+
import { formatDiagnosticsForError } from '../../ui/messages/chrome.js';
|
|
11
|
+
import { chromeBinaryOverrideNotFound, chromeBinaryOverrideNotExecutable, chromeBinaryOverrideIsDirectory, } from '../../ui/messages/chrome.js';
|
|
12
|
+
/**
|
|
13
|
+
* Get formatted Chrome diagnostics for error messages.
|
|
14
|
+
*
|
|
15
|
+
* Retrieves Chrome installation information and formats it for display
|
|
16
|
+
* in error messages. Uses cached diagnostics to avoid repeated filesystem scans.
|
|
17
|
+
*
|
|
18
|
+
* @returns Array of formatted diagnostic strings
|
|
19
|
+
*/
|
|
20
|
+
function getFormattedDiagnostics() {
|
|
21
|
+
const diagnostics = getChromeDiagnostics();
|
|
22
|
+
return formatDiagnosticsForError(diagnostics);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Resolve Chrome binary path from options or environment variable.
|
|
26
|
+
*
|
|
27
|
+
* Validates that the resolved binary:
|
|
28
|
+
* - Exists on the filesystem
|
|
29
|
+
* - Is a regular file (not a directory)
|
|
30
|
+
* - Has execute permissions
|
|
31
|
+
*
|
|
32
|
+
* @param options - Configuration with optional chromePath
|
|
33
|
+
* @returns Resolved and validated Chrome binary path, or undefined if not specified
|
|
34
|
+
* @throws ChromeLaunchError if binary path is invalid or not executable
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* // From options
|
|
39
|
+
* const binary = resolveChromeBinary({ chromePath: '/usr/bin/google-chrome' });
|
|
40
|
+
*
|
|
41
|
+
* // From environment variable
|
|
42
|
+
* process.env['CHROME_PATH'] = '/opt/chrome/chrome';
|
|
43
|
+
* const binary = resolveChromeBinary({});
|
|
44
|
+
*
|
|
45
|
+
* // Not specified (returns undefined, launcher will use default)
|
|
46
|
+
* const binary = resolveChromeBinary({});
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export function resolveChromeBinary(options) {
|
|
50
|
+
const override = options.chromePath ?? process.env['CHROME_PATH'];
|
|
51
|
+
if (!override) {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
const chromePath = override.trim();
|
|
55
|
+
if (!chromePath) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
const sourceLabel = options.chromePath ? 'chromePath option' : 'CHROME_PATH';
|
|
59
|
+
if (!fs.existsSync(chromePath)) {
|
|
60
|
+
const diagnostics = getFormattedDiagnostics();
|
|
61
|
+
throw new ChromeLaunchError(`${chromeBinaryOverrideNotFound(chromePath, sourceLabel)}\n\n${diagnostics.join('\n')}`);
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
const stats = fs.statSync(chromePath);
|
|
65
|
+
if (stats.isDirectory()) {
|
|
66
|
+
throw new ChromeLaunchError(chromeBinaryOverrideIsDirectory(chromePath, sourceLabel));
|
|
67
|
+
}
|
|
68
|
+
fs.accessSync(chromePath, fs.constants.X_OK);
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
if (error instanceof ChromeLaunchError) {
|
|
72
|
+
throw error;
|
|
73
|
+
}
|
|
74
|
+
throw new ChromeLaunchError(`${chromeBinaryOverrideNotExecutable(chromePath, sourceLabel)}\n\n${getErrorMessage(error)}`, error instanceof Error ? error : undefined);
|
|
75
|
+
}
|
|
76
|
+
return chromePath;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=binaryResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binaryResolver.js","sourceRoot":"","sources":["../../../src/connection/launcher/binaryResolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EACL,4BAA4B,EAC5B,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,yBAAyB,CAAC;AAUjC;;;;;;;GAOG;AACH,SAAS,uBAAuB;IAC9B,MAAM,WAAW,GAAG,oBAAoB,EAAE,CAAC;IAC3C,OAAO,yBAAyB,CAAC,WAAW,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA8B;IAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAElE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,CAAC;IAE7E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,uBAAuB,EAAE,CAAC;QAC9C,MAAM,IAAI,iBAAiB,CACzB,GAAG,4BAA4B,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,IAAI,iBAAiB,CAAC,+BAA+B,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;QACxF,CAAC;QAED,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;YACvC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,MAAM,IAAI,iBAAiB,CACzB,GAAG,iCAAiC,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,EAAE,EAC5F,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;IACJ,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chrome command-line flags builder.
|
|
3
|
+
*
|
|
4
|
+
* Constructs the Chrome flags array from launch options, handling:
|
|
5
|
+
* - Base chrome-launcher defaults
|
|
6
|
+
* - bdg-specific flags (remote debugging, etc.)
|
|
7
|
+
* - Docker environment detection and GPU-disabling flags
|
|
8
|
+
* - Headless mode
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Options that affect Chrome flags construction.
|
|
12
|
+
*/
|
|
13
|
+
export interface FlagsBuilderOptions {
|
|
14
|
+
/** CDP port number for remote debugging */
|
|
15
|
+
port?: number | undefined;
|
|
16
|
+
/** Whether to ignore chrome-launcher default flags */
|
|
17
|
+
ignoreDefaultFlags?: boolean | undefined;
|
|
18
|
+
/** Whether to launch in headless mode */
|
|
19
|
+
headless?: boolean | undefined;
|
|
20
|
+
/** Additional Chrome command-line flags */
|
|
21
|
+
chromeFlags?: string[] | undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Check if running inside a Docker container.
|
|
25
|
+
*
|
|
26
|
+
* Detects Docker environment by checking for:
|
|
27
|
+
* 1. /.dockerenv file (standard Docker indicator)
|
|
28
|
+
* 2. "docker" or "containerd" in /proc/self/cgroup
|
|
29
|
+
*
|
|
30
|
+
* @returns True if running in Docker, false otherwise
|
|
31
|
+
*/
|
|
32
|
+
export declare function isDocker(): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Build Chrome flags array from launch options.
|
|
35
|
+
*
|
|
36
|
+
* Uses chrome-launcher default flags as base (unless ignoreDefaultFlags is true)
|
|
37
|
+
* and layers bdg-specific overrides on top. Headless mode uses the new headless
|
|
38
|
+
* implementation for better compatibility.
|
|
39
|
+
*
|
|
40
|
+
* When running in Docker, automatically adds GPU-disabling flags to work around
|
|
41
|
+
* graphics limitations in containerized environments.
|
|
42
|
+
*
|
|
43
|
+
* @param options - Launch options containing flag preferences
|
|
44
|
+
* @returns Array of Chrome command-line flags
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* // Standard flags
|
|
49
|
+
* const flags = buildChromeFlags({ port: 9222 });
|
|
50
|
+
*
|
|
51
|
+
* // Headless with custom flags
|
|
52
|
+
* const flags = buildChromeFlags({
|
|
53
|
+
* port: 9222,
|
|
54
|
+
* headless: true,
|
|
55
|
+
* chromeFlags: ['--window-size=1920,1080']
|
|
56
|
+
* });
|
|
57
|
+
*
|
|
58
|
+
* // Docker environment (auto-detects)
|
|
59
|
+
* const flags = buildChromeFlags({ port: 9222 });
|
|
60
|
+
* // Includes --disable-gpu, --no-sandbox if in Docker
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
export declare function buildChromeFlags(options: FlagsBuilderOptions): string[];
|
|
64
|
+
//# sourceMappingURL=flagsBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flagsBuilder.d.ts","sourceRoot":"","sources":["../../../src/connection/launcher/flagsBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC,yCAAyC;IACzC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACpC;AAID;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,IAAI,OAAO,CAelC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,EAAE,CAoBvE"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chrome command-line flags builder.
|
|
3
|
+
*
|
|
4
|
+
* Constructs the Chrome flags array from launch options, handling:
|
|
5
|
+
* - Base chrome-launcher defaults
|
|
6
|
+
* - bdg-specific flags (remote debugging, etc.)
|
|
7
|
+
* - Docker environment detection and GPU-disabling flags
|
|
8
|
+
* - Headless mode
|
|
9
|
+
*/
|
|
10
|
+
import * as fs from 'fs';
|
|
11
|
+
import * as chromeLauncher from 'chrome-launcher';
|
|
12
|
+
import { BDG_CHROME_FLAGS, DEFAULT_CDP_PORT, HEADLESS_FLAG, DOCKER_CHROME_FLAGS, } from '../../constants.js';
|
|
13
|
+
const REMOTE_DEBUGGING_FLAG = (port) => `--remote-debugging-port=${port}`;
|
|
14
|
+
/**
|
|
15
|
+
* Check if running inside a Docker container.
|
|
16
|
+
*
|
|
17
|
+
* Detects Docker environment by checking for:
|
|
18
|
+
* 1. /.dockerenv file (standard Docker indicator)
|
|
19
|
+
* 2. "docker" or "containerd" in /proc/self/cgroup
|
|
20
|
+
*
|
|
21
|
+
* @returns True if running in Docker, false otherwise
|
|
22
|
+
*/
|
|
23
|
+
export function isDocker() {
|
|
24
|
+
try {
|
|
25
|
+
if (fs.existsSync('/.dockerenv')) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
if (fs.existsSync('/proc/self/cgroup')) {
|
|
29
|
+
const cgroup = fs.readFileSync('/proc/self/cgroup', 'utf8');
|
|
30
|
+
return cgroup.includes('docker') || cgroup.includes('containerd');
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Build Chrome flags array from launch options.
|
|
40
|
+
*
|
|
41
|
+
* Uses chrome-launcher default flags as base (unless ignoreDefaultFlags is true)
|
|
42
|
+
* and layers bdg-specific overrides on top. Headless mode uses the new headless
|
|
43
|
+
* implementation for better compatibility.
|
|
44
|
+
*
|
|
45
|
+
* When running in Docker, automatically adds GPU-disabling flags to work around
|
|
46
|
+
* graphics limitations in containerized environments.
|
|
47
|
+
*
|
|
48
|
+
* @param options - Launch options containing flag preferences
|
|
49
|
+
* @returns Array of Chrome command-line flags
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* // Standard flags
|
|
54
|
+
* const flags = buildChromeFlags({ port: 9222 });
|
|
55
|
+
*
|
|
56
|
+
* // Headless with custom flags
|
|
57
|
+
* const flags = buildChromeFlags({
|
|
58
|
+
* port: 9222,
|
|
59
|
+
* headless: true,
|
|
60
|
+
* chromeFlags: ['--window-size=1920,1080']
|
|
61
|
+
* });
|
|
62
|
+
*
|
|
63
|
+
* // Docker environment (auto-detects)
|
|
64
|
+
* const flags = buildChromeFlags({ port: 9222 });
|
|
65
|
+
* // Includes --disable-gpu, --no-sandbox if in Docker
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export function buildChromeFlags(options) {
|
|
69
|
+
const port = options.port ?? DEFAULT_CDP_PORT;
|
|
70
|
+
const baseFlags = options.ignoreDefaultFlags ? [] : chromeLauncher.Launcher.defaultFlags();
|
|
71
|
+
const bdgFlags = [REMOTE_DEBUGGING_FLAG(port), ...BDG_CHROME_FLAGS];
|
|
72
|
+
const dockerFlags = isDocker() ? DOCKER_CHROME_FLAGS : [];
|
|
73
|
+
if (options.headless) {
|
|
74
|
+
return [
|
|
75
|
+
HEADLESS_FLAG,
|
|
76
|
+
...baseFlags,
|
|
77
|
+
...bdgFlags,
|
|
78
|
+
...dockerFlags,
|
|
79
|
+
...(options.chromeFlags ?? []),
|
|
80
|
+
];
|
|
81
|
+
}
|
|
82
|
+
return [...baseFlags, ...bdgFlags, ...dockerFlags, ...(options.chromeFlags ?? [])];
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=flagsBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flagsBuilder.js","sourceRoot":"","sources":["../../../src/connection/launcher/flagsBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AAEzB,OAAO,KAAK,cAAc,MAAM,iBAAiB,CAAC;AAElD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAgBxB,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,2BAA2B,IAAI,EAAE,CAAC;AAE1F;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ;IACtB,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YAC5D,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAA4B;IAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,gBAAgB,CAAC;IAE9C,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IAE3F,MAAM,QAAQ,GAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,GAAG,gBAAgB,CAAC,CAAC;IAE9E,MAAM,WAAW,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;IAE1D,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO;YACL,aAAa;YACb,GAAG,SAAS;YACZ,GAAG,QAAQ;YACX,GAAG,WAAW;YACd,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;AACrF,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chrome preferences loader.
|
|
3
|
+
*
|
|
4
|
+
* Handles loading Chrome preferences from files or inline options,
|
|
5
|
+
* and validates that they are JSON-serializable for chrome-launcher compatibility.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* JSONLike type matching chrome-launcher's internal type definition.
|
|
9
|
+
*
|
|
10
|
+
* Used for Chrome preferences that must be JSON-serializable values.
|
|
11
|
+
* chrome-launcher enforces this constraint to ensure preferences can be
|
|
12
|
+
* safely serialized and passed to Chrome process.
|
|
13
|
+
*/
|
|
14
|
+
type JSONLike = {
|
|
15
|
+
[property: string]: JSONLike;
|
|
16
|
+
} | readonly JSONLike[] | string | number | boolean | null;
|
|
17
|
+
/**
|
|
18
|
+
* Options for loading Chrome preferences.
|
|
19
|
+
*/
|
|
20
|
+
export interface PreferencesLoaderOptions {
|
|
21
|
+
/** Path to JSON file containing Chrome preferences */
|
|
22
|
+
prefsFile?: string | undefined;
|
|
23
|
+
/** Inline Chrome preferences object */
|
|
24
|
+
prefs?: Record<string, unknown> | undefined;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Load Chrome preferences from file or inline options.
|
|
28
|
+
*
|
|
29
|
+
* Supports two modes:
|
|
30
|
+
* 1. **File-based**: Load preferences from JSON file (prefsFile)
|
|
31
|
+
* 2. **Inline**: Use preferences directly from options (prefs)
|
|
32
|
+
*
|
|
33
|
+
* File-based loading takes precedence over inline preferences.
|
|
34
|
+
*
|
|
35
|
+
* @param options - Options containing preferences configuration
|
|
36
|
+
* @returns Preferences object, or undefined if none specified
|
|
37
|
+
* @throws ChromeLaunchError if file doesn't exist, is invalid JSON, or wrong format
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* // From file
|
|
42
|
+
* const prefs = loadChromePrefs({ prefsFile: './chrome-prefs.json' });
|
|
43
|
+
*
|
|
44
|
+
* // Inline
|
|
45
|
+
* const prefs = loadChromePrefs({
|
|
46
|
+
* prefs: {
|
|
47
|
+
* 'profile.default_content_settings.popups': 0,
|
|
48
|
+
* 'download.default_directory': '/tmp/downloads'
|
|
49
|
+
* }
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export declare function loadChromePrefs(options: PreferencesLoaderOptions): Record<string, unknown> | undefined;
|
|
54
|
+
/**
|
|
55
|
+
* Type-safe conversion for Chrome preferences from unknown to JSONLike.
|
|
56
|
+
*
|
|
57
|
+
* chrome-launcher requires preferences to match its internal JSONLike type constraint
|
|
58
|
+
* for type safety. This function validates that preferences are JSON-serializable
|
|
59
|
+
* before casting to ensure runtime safety.
|
|
60
|
+
*
|
|
61
|
+
* @param prefs - Preferences object with unknown values from JSON parsing
|
|
62
|
+
* @returns Preferences compatible with chrome-launcher's JSONLike constraint, or undefined
|
|
63
|
+
* @throws ChromeLaunchError if preferences contain non-JSON-serializable values
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```typescript
|
|
67
|
+
* const prefs = loadChromePrefs({ prefsFile: './prefs.json' });
|
|
68
|
+
* const compatible = ensureJSONCompatiblePrefs(prefs);
|
|
69
|
+
* // Now safe to pass to chrome-launcher
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare function ensureJSONCompatiblePrefs(prefs: Record<string, unknown> | undefined): Record<string, JSONLike> | undefined;
|
|
73
|
+
export {};
|
|
74
|
+
//# sourceMappingURL=preferencesLoader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preferencesLoader.d.ts","sourceRoot":"","sources":["../../../src/connection/launcher/preferencesLoader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAWH;;;;;;GAMG;AACH,KAAK,QAAQ,GACT;IACE,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC;CAC9B,GACD,SAAS,QAAQ,EAAE,GACnB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,CAAC;AAET;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAC7C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,wBAAwB,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAkCrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACzC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,CAetC"}
|