browser-debugger-cli 0.7.1 → 0.8.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 +14 -6
- package/dist/cdp/protocol.d.ts +1 -1
- package/dist/cdp/protocol.js +1 -1
- package/dist/cdp/schema.d.ts +10 -0
- package/dist/cdp/schema.js +13 -0
- package/dist/commands/cdp.js +75 -23
- package/dist/commands/cleanup.js +31 -23
- package/dist/commands/console.d.ts +18 -1
- package/dist/commands/console.js +98 -53
- package/dist/commands/details.js +13 -3
- package/dist/commands/dom/DomElementResolver.d.ts +24 -69
- package/dist/commands/dom/DomElementResolver.js +71 -162
- package/dist/commands/dom/a11y.js +52 -33
- package/dist/commands/dom/eval.d.ts +13 -0
- package/dist/commands/dom/eval.js +43 -0
- package/dist/commands/dom/form.js +103 -147
- package/dist/commands/dom/formInteraction.d.ts +6 -1
- package/dist/commands/dom/formInteraction.js +223 -305
- package/dist/commands/dom/frames.d.ts +12 -0
- package/dist/commands/dom/frames.js +28 -0
- package/dist/commands/dom/get.d.ts +20 -0
- package/dist/commands/dom/get.js +141 -0
- package/dist/commands/dom/helpers/index.d.ts +11 -0
- package/dist/commands/dom/helpers/index.js +10 -0
- package/dist/commands/dom/helpers/query.d.ts +78 -0
- package/dist/commands/dom/helpers/query.js +457 -0
- package/dist/commands/dom/helpers/runElementCommand.d.ts +56 -0
- package/dist/commands/dom/helpers/runElementCommand.js +63 -0
- package/dist/commands/dom/helpers/screenshot.d.ts +30 -0
- package/dist/commands/dom/helpers/screenshot.js +374 -0
- package/dist/commands/dom/index.d.ts +15 -3
- package/dist/commands/dom/index.js +45 -511
- package/dist/commands/dom/listeners.d.ts +16 -0
- package/dist/commands/dom/listeners.js +54 -0
- package/dist/commands/dom/query.d.ts +14 -0
- package/dist/commands/dom/query.js +36 -0
- package/dist/commands/dom/screenshot.d.ts +21 -0
- package/dist/commands/dom/screenshot.js +248 -0
- package/dist/commands/dom/semanticUtils.d.ts +44 -0
- package/dist/commands/dom/semanticUtils.js +102 -0
- package/dist/commands/helpJson.d.ts +4 -2
- package/dist/commands/helpJson.js +12 -32
- package/dist/commands/helpTopic.d.ts +32 -0
- package/dist/commands/helpTopic.js +58 -0
- package/dist/commands/network/har.js +50 -24
- package/dist/commands/network/list.js +96 -63
- package/dist/commands/network/shared.d.ts +9 -15
- package/dist/commands/network/shared.js +30 -51
- package/dist/commands/optionBehaviors.d.ts +1 -9
- package/dist/commands/optionBehaviors.js +46 -25
- package/dist/commands/page.d.ts +11 -0
- package/dist/commands/page.js +112 -0
- package/dist/commands/peek.js +62 -48
- package/dist/commands/shared/CommandRunner.d.ts +18 -1
- package/dist/commands/shared/CommandRunner.js +83 -26
- package/dist/commands/shared/commonOptions.d.ts +10 -0
- package/dist/commands/shared/commonOptions.js +12 -0
- package/dist/commands/shared/daemonErrorHandler.d.ts +9 -0
- package/dist/commands/shared/daemonErrorHandler.js +31 -11
- package/dist/commands/shared/dataFetcher.d.ts +33 -10
- package/dist/commands/shared/dataFetcher.js +57 -20
- package/dist/commands/shared/followMode.d.ts +0 -3
- package/dist/commands/shared/followMode.js +6 -11
- package/dist/commands/shared/handleValidationError.d.ts +14 -0
- package/dist/commands/shared/handleValidationError.js +39 -0
- package/dist/commands/shared/optionTypes.d.ts +42 -22
- package/dist/commands/shared/outputFile.d.ts +33 -0
- package/dist/commands/shared/outputFile.js +78 -0
- package/dist/commands/shared/startHelpers.d.ts +5 -8
- package/dist/commands/shared/startHelpers.js +226 -37
- package/dist/commands/shared/validation.d.ts +42 -0
- package/dist/commands/shared/validation.js +101 -22
- package/dist/commands/start.d.ts +28 -1
- package/dist/commands/start.js +226 -38
- package/dist/commands/status.js +48 -11
- package/dist/commands/stop.js +16 -26
- package/dist/commands/tail.js +20 -35
- package/dist/commands.js +2 -0
- package/dist/connection/cdp.d.ts +12 -6
- package/dist/connection/cdp.js +59 -16
- package/dist/connection/diagnostics.d.ts +0 -9
- package/dist/connection/diagnostics.js +0 -13
- package/dist/connection/errors.d.ts +36 -1
- package/dist/connection/errors.js +43 -3
- package/dist/connection/handlers.d.ts +5 -5
- package/dist/connection/handlers.js +1 -1
- package/dist/connection/inFlightRequests.d.ts +33 -0
- package/dist/connection/inFlightRequests.js +52 -0
- package/dist/connection/launcher/binaryResolver.js +20 -7
- package/dist/connection/launcher/flagsBuilder.d.ts +24 -54
- package/dist/connection/launcher/flagsBuilder.js +65 -40
- package/dist/connection/launcher/preferencesLoader.js +27 -8
- package/dist/connection/launcher.d.ts +2 -0
- package/dist/connection/launcher.js +48 -29
- package/dist/connection/pageReadiness.d.ts +5 -6
- package/dist/connection/pageReadiness.js +63 -120
- package/dist/connection/portReservation.d.ts +10 -0
- package/dist/connection/portReservation.js +37 -2
- package/dist/connection/startupExit.d.ts +37 -0
- package/dist/connection/startupExit.js +107 -0
- package/dist/connection/typed-cdp.d.ts +8 -6
- package/dist/connection/typed-cdp.js +5 -3
- package/dist/connection/types.d.ts +3 -0
- package/dist/constants.d.ts +21 -22
- package/dist/constants.js +28 -25
- package/dist/daemon/SessionController.d.ts +125 -0
- package/dist/daemon/SessionController.js +472 -0
- package/dist/daemon/errors.d.ts +15 -19
- package/dist/daemon/errors.js +18 -21
- package/dist/daemon/ipcServer.d.ts +44 -30
- package/dist/daemon/ipcServer.js +164 -132
- package/dist/daemon/launcher.d.ts +13 -21
- package/dist/daemon/launcher.js +94 -101
- package/dist/daemon/messages.d.ts +29 -0
- package/dist/daemon/messages.js +35 -0
- package/dist/daemon/patternDefinitions.d.ts +1 -1
- package/dist/daemon/patternDefinitions.js +3 -2
- package/dist/daemon/patternDetector.d.ts +13 -29
- package/dist/daemon/patternDetector.js +26 -47
- package/dist/daemon/server/SocketServer.d.ts +56 -2
- package/dist/daemon/server/SocketServer.js +131 -30
- package/dist/daemon/session/Session.d.ts +137 -0
- package/dist/daemon/session/Session.js +288 -0
- package/dist/daemon/session/TelemetryStore.d.ts +30 -0
- package/dist/daemon/session/TelemetryStore.js +44 -0
- package/dist/daemon/session/cdpSetup.d.ts +47 -0
- package/dist/daemon/session/cdpSetup.js +94 -0
- package/dist/daemon/session/chromeConnection.d.ts +38 -0
- package/dist/daemon/session/chromeConnection.js +178 -0
- package/dist/daemon/{worker → session}/collectors.d.ts +3 -3
- package/dist/daemon/{worker → session}/collectors.js +3 -3
- package/dist/daemon/session/commandRegistry.js +445 -0
- package/dist/daemon/session/interactions.d.ts +27 -0
- package/dist/daemon/session/interactions.js +44 -0
- package/dist/daemon/{worker → session}/plugins.d.ts +3 -3
- package/dist/daemon/session/plugins.js +219 -0
- package/dist/daemon/session/targetMismatch.d.ts +34 -0
- package/dist/daemon/session/targetMismatch.js +83 -0
- package/dist/daemon/session/teardown.d.ts +27 -0
- package/dist/daemon/session/teardown.js +128 -0
- package/dist/daemon/{worker → session}/types.d.ts +2 -2
- package/dist/daemon.d.ts +3 -4
- package/dist/daemon.js +15356 -24
- package/dist/{ui/errors → errors}/CommandError.js +1 -1
- package/dist/{ui/errors → errors}/index.d.ts +2 -0
- package/dist/errors/issues.d.ts +16 -0
- package/dist/errors/issues.js +11 -0
- package/dist/errors/messages.d.ts +545 -0
- package/dist/errors/messages.js +959 -0
- package/dist/errors/notices.d.ts +30 -0
- package/dist/errors/notices.js +11 -0
- package/dist/{ui/errors → errors}/utils.js +1 -1
- package/dist/index.js +16410 -168
- package/dist/ipc/client.d.ts +44 -8
- package/dist/ipc/client.js +95 -18
- package/dist/ipc/index.d.ts +2 -2
- package/dist/ipc/index.js +2 -2
- package/dist/ipc/protocol/commands.d.ts +220 -59
- package/dist/ipc/protocol/commands.js +27 -21
- package/dist/ipc/protocol/domTypes.d.ts +236 -0
- package/dist/ipc/protocol/domTypes.js +10 -0
- package/dist/ipc/protocol/guards.d.ts +4 -4
- package/dist/ipc/protocol/guards.js +4 -4
- package/dist/ipc/protocol/messages.d.ts +9 -33
- package/dist/ipc/protocol/messages.js +1 -1
- package/dist/ipc/session/errors.d.ts +10 -2
- package/dist/ipc/session/errors.js +10 -2
- package/dist/ipc/session/lifecycle.d.ts +20 -22
- package/dist/ipc/session/queries.d.ts +21 -4
- package/dist/ipc/session/types.d.ts +1 -1
- package/dist/ipc/session/types.js +1 -1
- package/dist/ipc/transport/IPCError.d.ts +3 -3
- package/dist/ipc/transport/IPCError.js +3 -3
- package/dist/ipc/transport/index.d.ts +7 -1
- package/dist/ipc/transport/index.js +7 -2
- package/dist/ipc/transport/jsonl.d.ts +28 -2
- package/dist/ipc/transport/jsonl.js +57 -10
- package/dist/ipc/utils/errors.d.ts +4 -2
- package/dist/ipc/utils/errors.js +10 -4
- package/dist/ipc/utils/index.d.ts +0 -1
- package/dist/ipc/utils/index.js +0 -1
- package/dist/ipc/utils/responseValidator.d.ts +5 -1
- package/dist/ipc/utils/responseValidator.js +7 -3
- package/dist/runtime/dom/evalHelpers.d.ts +76 -0
- package/dist/runtime/dom/evalHelpers.js +406 -0
- package/dist/runtime/dom/eventListeners.d.ts +23 -0
- package/dist/runtime/dom/eventListeners.js +252 -0
- package/dist/runtime/dom/formDiscovery.d.ts +26 -0
- package/dist/{commands → runtime}/dom/formDiscovery.js +48 -9
- package/dist/runtime/dom/formFillHelpers/fill.d.ts +29 -0
- package/dist/runtime/dom/formFillHelpers/fill.js +299 -0
- package/dist/runtime/dom/formFillHelpers/index.d.ts +17 -0
- package/dist/runtime/dom/formFillHelpers/index.js +17 -0
- package/dist/runtime/dom/formFillHelpers/pressKey.d.ts +28 -0
- package/dist/runtime/dom/formFillHelpers/pressKey.js +195 -0
- package/dist/runtime/dom/formFillHelpers/scroll.d.ts +24 -0
- package/dist/runtime/dom/formFillHelpers/scroll.js +188 -0
- package/dist/runtime/dom/formFillHelpers/shared.d.ts +43 -0
- package/dist/runtime/dom/formFillHelpers/shared.js +100 -0
- package/dist/runtime/dom/formFillHelpers/stability.d.ts +14 -0
- package/dist/runtime/dom/formFillHelpers/stability.js +40 -0
- package/dist/runtime/dom/formSubmitHelpers.d.ts +29 -0
- package/dist/runtime/dom/formSubmitHelpers.js +252 -0
- package/dist/runtime/dom/formTypes.d.ts +8 -0
- package/dist/runtime/dom/frameSelection.d.ts +27 -0
- package/dist/runtime/dom/frameSelection.js +66 -0
- package/dist/runtime/dom/frames.d.ts +38 -0
- package/dist/runtime/dom/frames.js +305 -0
- package/dist/runtime/dom/keyMapping.d.ts +103 -0
- package/dist/runtime/dom/keyMapping.js +232 -0
- package/dist/runtime/dom/listenerSummary.d.ts +72 -0
- package/dist/runtime/dom/listenerSummary.js +150 -0
- package/dist/runtime/dom/reactEventHelpers.d.ts +61 -0
- package/dist/runtime/dom/reactEventHelpers.js +470 -0
- package/dist/runtime/dom/targetNode.d.ts +78 -0
- package/dist/runtime/dom/targetNode.js +154 -0
- package/dist/runtime/page/navigation.d.ts +34 -0
- package/dist/runtime/page/navigation.js +249 -0
- package/dist/session/QueryCacheManager.d.ts +25 -82
- package/dist/session/QueryCacheManager.js +41 -133
- package/dist/session/chrome.d.ts +21 -16
- package/dist/session/chrome.js +28 -44
- package/dist/session/cleanup/staleSession.d.ts +49 -0
- package/dist/session/cleanup/staleSession.js +124 -0
- package/dist/session/cleanup/userCommands.d.ts +36 -0
- package/dist/session/cleanup/userCommands.js +95 -0
- package/dist/session/daemonSocket.d.ts +25 -0
- package/dist/session/daemonSocket.js +40 -0
- package/dist/session/lastSession.d.ts +29 -0
- package/dist/session/lastSession.js +45 -0
- package/dist/session/metadata.d.ts +3 -1
- package/dist/session/paths.d.ts +2 -4
- package/dist/session/paths.js +2 -4
- package/dist/session/pid.d.ts +9 -38
- package/dist/session/pid.js +14 -64
- package/dist/session/port.d.ts +0 -5
- package/dist/session/port.js +9 -19
- package/dist/telemetry/a11y.d.ts +26 -20
- package/dist/telemetry/a11y.js +237 -104
- package/dist/telemetry/attachedTargets.d.ts +36 -0
- package/dist/telemetry/attachedTargets.js +163 -0
- package/dist/telemetry/console.d.ts +21 -4
- package/dist/telemetry/console.js +122 -11
- package/dist/telemetry/dialogs.d.ts +4 -2
- package/dist/telemetry/dialogs.js +3 -1
- package/dist/telemetry/dom.d.ts +1 -11
- package/dist/telemetry/dom.js +0 -102
- package/dist/telemetry/filterDsl.d.ts +9 -1
- package/dist/telemetry/filterDsl.js +101 -31
- package/dist/telemetry/filterPresets.js +12 -2
- package/dist/telemetry/filters.d.ts +1 -1
- package/dist/telemetry/filters.js +38 -3
- package/dist/telemetry/har/builder.js +190 -160
- package/dist/telemetry/har/types.d.ts +21 -4
- package/dist/telemetry/navigation.d.ts +13 -29
- package/dist/telemetry/navigation.js +12 -46
- package/dist/telemetry/network.d.ts +37 -1
- package/dist/telemetry/network.js +343 -130
- package/dist/telemetry/networkExtraInfo.d.ts +106 -0
- package/dist/telemetry/networkExtraInfo.js +241 -0
- package/dist/telemetry/objectExpander.d.ts +14 -5
- package/dist/telemetry/objectExpander.js +13 -6
- package/dist/telemetry/remoteObject.d.ts +10 -2
- package/dist/telemetry/remoteObject.js +59 -2
- package/dist/telemetry/remoteObjectUtils.js +22 -3
- package/dist/types.d.ts +64 -44
- package/dist/types.js +1 -33
- package/dist/ui/OutputBuilder.d.ts +17 -14
- package/dist/ui/OutputBuilder.js +18 -87
- package/dist/ui/formatters/a11y.js +72 -9
- package/dist/ui/formatters/console/chronological.d.ts +14 -0
- package/dist/ui/formatters/console/chronological.js +58 -0
- package/dist/ui/formatters/console/follow.d.ts +18 -0
- package/dist/ui/formatters/console/follow.js +36 -0
- package/dist/ui/formatters/console/json.d.ts +21 -0
- package/dist/ui/formatters/console/json.js +53 -0
- package/dist/ui/formatters/console/shared.d.ts +136 -0
- package/dist/ui/formatters/console/shared.js +158 -0
- package/dist/ui/formatters/console/summarize.d.ts +10 -0
- package/dist/ui/formatters/console/summarize.js +63 -0
- package/dist/ui/formatters/console.d.ts +16 -137
- package/dist/ui/formatters/console.js +17 -418
- package/dist/ui/formatters/cookies.js +3 -3
- package/dist/ui/formatters/details.d.ts +5 -2
- package/dist/ui/formatters/details.js +183 -24
- package/dist/ui/formatters/dom.d.ts +27 -6
- package/dist/ui/formatters/dom.js +80 -28
- package/dist/ui/formatters/form.js +35 -56
- package/dist/ui/formatters/helpFormatters.js +5 -4
- package/dist/ui/formatters/listeners.d.ts +24 -0
- package/dist/ui/formatters/listeners.js +96 -0
- package/dist/ui/formatters/networkHeaders.d.ts +3 -3
- package/dist/ui/formatters/networkHeaders.js +7 -4
- package/dist/ui/formatters/networkList.d.ts +14 -2
- package/dist/ui/formatters/networkList.js +80 -35
- package/dist/ui/formatters/preview.d.ts +21 -3
- package/dist/ui/formatters/preview.js +53 -72
- package/dist/ui/formatters/requestStatus.d.ts +34 -0
- package/dist/ui/formatters/requestStatus.js +55 -0
- package/dist/ui/formatters/semantic.d.ts +1 -1
- package/dist/ui/formatters/semantic.js +1 -1
- package/dist/ui/formatters/sessionFormatters.js +11 -8
- package/dist/ui/formatters/status.d.ts +23 -5
- package/dist/ui/formatters/status.js +48 -24
- package/dist/ui/formatting.d.ts +35 -0
- package/dist/ui/formatting.js +122 -23
- package/dist/ui/logging/logger.d.ts +1 -1
- package/dist/ui/messages/chrome.d.ts +35 -100
- package/dist/ui/messages/chrome.js +102 -136
- package/dist/ui/messages/commands.d.ts +121 -3
- package/dist/ui/messages/commands.js +153 -6
- package/dist/ui/messages/consoleMessages.d.ts +0 -6
- package/dist/ui/messages/consoleMessages.js +0 -8
- package/dist/ui/messages/hints.d.ts +9 -15
- package/dist/ui/messages/hints.js +17 -16
- package/dist/ui/messages/networkMessages.d.ts +0 -6
- package/dist/ui/messages/networkMessages.js +0 -8
- package/dist/ui/messages/preview.js +2 -2
- package/dist/ui/messages/session.d.ts +24 -3
- package/dist/ui/messages/session.js +38 -7
- package/dist/ui/messages/validation.d.ts +15 -26
- package/dist/ui/messages/validation.js +33 -38
- package/dist/utils/atomicFile.js +1 -1
- package/dist/utils/decisionTrees.js +1 -1
- package/dist/utils/errorMapping.js +15 -4
- package/dist/utils/errors.d.ts +13 -0
- package/dist/utils/errors.js +21 -0
- package/dist/utils/exitCodes.d.ts +5 -0
- package/dist/utils/exitCodes.js +36 -2
- package/dist/utils/http.d.ts +35 -4
- package/dist/utils/http.js +59 -6
- package/dist/utils/packageRoot.d.ts +12 -0
- package/dist/utils/packageRoot.js +33 -0
- package/dist/utils/process.d.ts +10 -0
- package/dist/utils/process.js +35 -3
- package/dist/utils/selectorFilters.d.ts +45 -0
- package/dist/utils/selectorFilters.js +224 -0
- package/dist/utils/suggestions.js +1 -1
- package/dist/utils/taskMappings.js +7 -2
- package/dist/utils/typeGuards.js +2 -2
- package/dist/utils/url.d.ts +13 -5
- package/dist/utils/url.js +53 -52
- package/dist/utils/validation.d.ts +15 -93
- package/dist/utils/validation.js +10 -118
- package/dist/utils/version.js +3 -5
- package/package.json +39 -30
- package/dist/__testfixtures__/cdpMessages.d.ts +0 -43
- package/dist/__testfixtures__/cdpMessages.d.ts.map +0 -1
- package/dist/__testfixtures__/cdpMessages.js +0 -118
- package/dist/__testfixtures__/cdpMessages.js.map +0 -1
- package/dist/__testfixtures__/connectionTargets.d.ts +0 -21
- package/dist/__testfixtures__/connectionTargets.d.ts.map +0 -1
- package/dist/__testfixtures__/connectionTargets.js +0 -59
- package/dist/__testfixtures__/connectionTargets.js.map +0 -1
- package/dist/__tests__/fixtures/schema-v0.2.1.golden.json +0 -47
- package/dist/__tests__/integration/session-files.integration.test.d.ts +0 -2
- package/dist/__tests__/integration/session-files.integration.test.d.ts.map +0 -1
- package/dist/__tests__/integration/session-files.integration.test.js +0 -66
- package/dist/__tests__/integration/session-files.integration.test.js.map +0 -1
- package/dist/__tests__/schema.contract.test.d.ts +0 -19
- package/dist/__tests__/schema.contract.test.d.ts.map +0 -1
- package/dist/__tests__/schema.contract.test.js +0 -236
- package/dist/__tests__/schema.contract.test.js.map +0 -1
- package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +0 -8
- package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +0 -1
- package/dist/__tests__/smoke/error-handling.smoke.test.js +0 -66
- package/dist/__tests__/smoke/error-handling.smoke.test.js.map +0 -1
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +0 -8
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +0 -1
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +0 -112
- package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +0 -1
- package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts +0 -12
- package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts.map +0 -1
- package/dist/__tests__/telemetry/filterDsl.unit.test.js +0 -374
- package/dist/__tests__/telemetry/filterDsl.unit.test.js.map +0 -1
- package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts +0 -10
- package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts.map +0 -1
- package/dist/__tests__/telemetry/filterPresets.unit.test.js +0 -89
- package/dist/__tests__/telemetry/filterPresets.unit.test.js.map +0 -1
- package/dist/__testutils__/FakeClock.d.ts +0 -67
- package/dist/__testutils__/FakeClock.d.ts.map +0 -1
- package/dist/__testutils__/FakeClock.js +0 -132
- package/dist/__testutils__/FakeClock.js.map +0 -1
- package/dist/__testutils__/FakeWebSocket.d.ts +0 -106
- package/dist/__testutils__/FakeWebSocket.d.ts.map +0 -1
- package/dist/__testutils__/FakeWebSocket.js +0 -213
- package/dist/__testutils__/FakeWebSocket.js.map +0 -1
- package/dist/__testutils__/assertions.d.ts +0 -33
- package/dist/__testutils__/assertions.d.ts.map +0 -1
- package/dist/__testutils__/assertions.js +0 -57
- package/dist/__testutils__/assertions.js.map +0 -1
- package/dist/__testutils__/commandRunner.d.ts +0 -45
- package/dist/__testutils__/commandRunner.d.ts.map +0 -1
- package/dist/__testutils__/commandRunner.js +0 -108
- package/dist/__testutils__/commandRunner.js.map +0 -1
- package/dist/__testutils__/daemonHelpers.d.ts +0 -93
- package/dist/__testutils__/daemonHelpers.d.ts.map +0 -1
- package/dist/__testutils__/daemonHelpers.js +0 -255
- package/dist/__testutils__/daemonHelpers.js.map +0 -1
- package/dist/__testutils__/index.d.ts +0 -16
- package/dist/__testutils__/index.d.ts.map +0 -1
- package/dist/__testutils__/index.js +0 -16
- package/dist/__testutils__/index.js.map +0 -1
- package/dist/__testutils__/testCleanup.d.ts +0 -45
- package/dist/__testutils__/testCleanup.d.ts.map +0 -1
- package/dist/__testutils__/testCleanup.js +0 -87
- package/dist/__testutils__/testCleanup.js.map +0 -1
- package/dist/__testutils__/testClock.d.ts +0 -28
- package/dist/__testutils__/testClock.d.ts.map +0 -1
- package/dist/__testutils__/testClock.js +0 -81
- package/dist/__testutils__/testClock.js.map +0 -1
- package/dist/__testutils__/testFixtures.d.ts +0 -15
- package/dist/__testutils__/testFixtures.d.ts.map +0 -1
- package/dist/__testutils__/testFixtures.js +0 -23
- package/dist/__testutils__/testFixtures.js.map +0 -1
- package/dist/__testutils__/testHome.d.ts +0 -26
- package/dist/__testutils__/testHome.d.ts.map +0 -1
- package/dist/__testutils__/testHome.js +0 -57
- package/dist/__testutils__/testHome.js.map +0 -1
- package/dist/__testutils__/testProcess.d.ts +0 -46
- package/dist/__testutils__/testProcess.d.ts.map +0 -1
- package/dist/__testutils__/testProcess.js +0 -85
- package/dist/__testutils__/testProcess.js.map +0 -1
- package/dist/cdp/protocol.d.ts.map +0 -1
- package/dist/cdp/protocol.js.map +0 -1
- package/dist/cdp/schema.d.ts.map +0 -1
- package/dist/cdp/schema.js.map +0 -1
- package/dist/cdp/types.d.ts.map +0 -1
- package/dist/cdp/types.js.map +0 -1
- package/dist/commands/__tests__/cdp.contract.test.d.ts +0 -24
- package/dist/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
- package/dist/commands/__tests__/cdp.contract.test.js +0 -466
- package/dist/commands/__tests__/cdp.contract.test.js.map +0 -1
- package/dist/commands/__tests__/console.contract.test.d.ts +0 -9
- package/dist/commands/__tests__/console.contract.test.d.ts.map +0 -1
- package/dist/commands/__tests__/console.contract.test.js +0 -118
- package/dist/commands/__tests__/console.contract.test.js.map +0 -1
- package/dist/commands/__tests__/domEval.contract.test.d.ts +0 -17
- package/dist/commands/__tests__/domEval.contract.test.d.ts.map +0 -1
- package/dist/commands/__tests__/domEval.contract.test.js +0 -235
- package/dist/commands/__tests__/domEval.contract.test.js.map +0 -1
- package/dist/commands/__tests__/helpJson.contract.test.d.ts +0 -12
- package/dist/commands/__tests__/helpJson.contract.test.d.ts.map +0 -1
- package/dist/commands/__tests__/helpJson.contract.test.js +0 -121
- package/dist/commands/__tests__/helpJson.contract.test.js.map +0 -1
- package/dist/commands/__tests__/machineReadableHelp.contract.test.d.ts +0 -12
- package/dist/commands/__tests__/machineReadableHelp.contract.test.d.ts.map +0 -1
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js +0 -121
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js.map +0 -1
- package/dist/commands/cdp.d.ts.map +0 -1
- package/dist/commands/cdp.js.map +0 -1
- package/dist/commands/cleanup.d.ts.map +0 -1
- package/dist/commands/cleanup.js.map +0 -1
- package/dist/commands/console.d.ts.map +0 -1
- package/dist/commands/console.js.map +0 -1
- package/dist/commands/details.d.ts.map +0 -1
- package/dist/commands/details.js.map +0 -1
- package/dist/commands/dom/DomElementResolver.d.ts.map +0 -1
- package/dist/commands/dom/DomElementResolver.js.map +0 -1
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts +0 -2
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts.map +0 -1
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.js +0 -184
- package/dist/commands/dom/__tests__/screenshotResize.unit.test.js.map +0 -1
- package/dist/commands/dom/a11y.d.ts.map +0 -1
- package/dist/commands/dom/a11y.js.map +0 -1
- package/dist/commands/dom/evalHelpers.d.ts +0 -38
- package/dist/commands/dom/evalHelpers.d.ts.map +0 -1
- package/dist/commands/dom/evalHelpers.js +0 -121
- package/dist/commands/dom/evalHelpers.js.map +0 -1
- package/dist/commands/dom/form.d.ts.map +0 -1
- package/dist/commands/dom/form.js.map +0 -1
- package/dist/commands/dom/formDiscovery.d.ts +0 -26
- package/dist/commands/dom/formDiscovery.d.ts.map +0 -1
- package/dist/commands/dom/formDiscovery.js.map +0 -1
- package/dist/commands/dom/formFillHelpers.d.ts +0 -186
- package/dist/commands/dom/formFillHelpers.d.ts.map +0 -1
- package/dist/commands/dom/formFillHelpers.js +0 -650
- package/dist/commands/dom/formFillHelpers.js.map +0 -1
- package/dist/commands/dom/formInteraction.d.ts.map +0 -1
- package/dist/commands/dom/formInteraction.js.map +0 -1
- package/dist/commands/dom/formSubmitHelpers.d.ts +0 -59
- package/dist/commands/dom/formSubmitHelpers.d.ts.map +0 -1
- package/dist/commands/dom/formSubmitHelpers.js +0 -163
- package/dist/commands/dom/formSubmitHelpers.js.map +0 -1
- package/dist/commands/dom/formTypes.d.ts +0 -75
- package/dist/commands/dom/formTypes.d.ts.map +0 -1
- package/dist/commands/dom/formTypes.js.map +0 -1
- package/dist/commands/dom/helpers.d.ts +0 -86
- package/dist/commands/dom/helpers.d.ts.map +0 -1
- package/dist/commands/dom/helpers.js +0 -656
- package/dist/commands/dom/helpers.js.map +0 -1
- package/dist/commands/dom/index.d.ts.map +0 -1
- package/dist/commands/dom/index.js.map +0 -1
- package/dist/commands/dom/keyMapping.d.ts +0 -56
- package/dist/commands/dom/keyMapping.d.ts.map +0 -1
- package/dist/commands/dom/keyMapping.js +0 -110
- package/dist/commands/dom/keyMapping.js.map +0 -1
- package/dist/commands/dom/reactEventHelpers.d.ts +0 -79
- package/dist/commands/dom/reactEventHelpers.d.ts.map +0 -1
- package/dist/commands/dom/reactEventHelpers.js +0 -239
- package/dist/commands/dom/reactEventHelpers.js.map +0 -1
- package/dist/commands/dom/screenshotResize.d.ts.map +0 -1
- package/dist/commands/dom/screenshotResize.js.map +0 -1
- package/dist/commands/helpJson.d.ts.map +0 -1
- package/dist/commands/helpJson.js.map +0 -1
- package/dist/commands/machineReadableHelp.d.ts +0 -165
- package/dist/commands/machineReadableHelp.d.ts.map +0 -1
- package/dist/commands/machineReadableHelp.js +0 -252
- package/dist/commands/machineReadableHelp.js.map +0 -1
- package/dist/commands/network/har.d.ts.map +0 -1
- package/dist/commands/network/har.js.map +0 -1
- package/dist/commands/network/index.d.ts.map +0 -1
- package/dist/commands/network/index.js.map +0 -1
- package/dist/commands/network/list.d.ts.map +0 -1
- package/dist/commands/network/list.js.map +0 -1
- package/dist/commands/network/shared.d.ts.map +0 -1
- package/dist/commands/network/shared.js.map +0 -1
- package/dist/commands/network.d.ts +0 -8
- package/dist/commands/network.d.ts.map +0 -1
- package/dist/commands/network.js +0 -216
- package/dist/commands/network.js.map +0 -1
- package/dist/commands/optionBehaviors.d.ts.map +0 -1
- package/dist/commands/optionBehaviors.js.map +0 -1
- package/dist/commands/peek.d.ts.map +0 -1
- package/dist/commands/peek.js.map +0 -1
- package/dist/commands/shared/CommandRunner.d.ts.map +0 -1
- package/dist/commands/shared/CommandRunner.js.map +0 -1
- package/dist/commands/shared/__tests__/validation.unit.test.d.ts +0 -7
- package/dist/commands/shared/__tests__/validation.unit.test.d.ts.map +0 -1
- package/dist/commands/shared/__tests__/validation.unit.test.js +0 -141
- package/dist/commands/shared/__tests__/validation.unit.test.js.map +0 -1
- package/dist/commands/shared/commonOptions.d.ts.map +0 -1
- package/dist/commands/shared/commonOptions.js.map +0 -1
- package/dist/commands/shared/daemonErrorHandler.d.ts.map +0 -1
- package/dist/commands/shared/daemonErrorHandler.js.map +0 -1
- package/dist/commands/shared/dataFetcher.d.ts.map +0 -1
- package/dist/commands/shared/dataFetcher.js.map +0 -1
- package/dist/commands/shared/followMode.d.ts.map +0 -1
- package/dist/commands/shared/followMode.js.map +0 -1
- package/dist/commands/shared/landingPage.d.ts.map +0 -1
- package/dist/commands/shared/landingPage.js.map +0 -1
- package/dist/commands/shared/optionTypes.d.ts.map +0 -1
- package/dist/commands/shared/optionTypes.js.map +0 -1
- package/dist/commands/shared/startHelpers.d.ts.map +0 -1
- package/dist/commands/shared/startHelpers.js.map +0 -1
- package/dist/commands/shared/validation.d.ts.map +0 -1
- package/dist/commands/shared/validation.js.map +0 -1
- package/dist/commands/start.d.ts.map +0 -1
- package/dist/commands/start.js.map +0 -1
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/stop.d.ts.map +0 -1
- package/dist/commands/stop.js.map +0 -1
- package/dist/commands/tail.d.ts.map +0 -1
- package/dist/commands/tail.js.map +0 -1
- package/dist/commands/types.d.ts.map +0 -1
- package/dist/commands/types.js.map +0 -1
- package/dist/commands.d.ts.map +0 -1
- package/dist/commands.js.map +0 -1
- package/dist/connection/__tests__/cdp.contract.test.d.ts +0 -16
- package/dist/connection/__tests__/cdp.contract.test.d.ts.map +0 -1
- package/dist/connection/__tests__/cdp.contract.test.js +0 -377
- package/dist/connection/__tests__/cdp.contract.test.js.map +0 -1
- package/dist/connection/__tests__/flagsBuilder.unit.test.d.ts +0 -9
- package/dist/connection/__tests__/flagsBuilder.unit.test.d.ts.map +0 -1
- package/dist/connection/__tests__/flagsBuilder.unit.test.js +0 -94
- package/dist/connection/__tests__/flagsBuilder.unit.test.js.map +0 -1
- package/dist/connection/__tests__/handlers.unit.test.d.ts +0 -11
- package/dist/connection/__tests__/handlers.unit.test.d.ts.map +0 -1
- package/dist/connection/__tests__/handlers.unit.test.js +0 -220
- package/dist/connection/__tests__/handlers.unit.test.js.map +0 -1
- package/dist/connection/__tests__/pageReadiness.contract.test.d.ts +0 -14
- package/dist/connection/__tests__/pageReadiness.contract.test.d.ts.map +0 -1
- package/dist/connection/__tests__/pageReadiness.contract.test.js +0 -382
- package/dist/connection/__tests__/pageReadiness.contract.test.js.map +0 -1
- package/dist/connection/__tests__/portReservation.contract.test.d.ts +0 -14
- package/dist/connection/__tests__/portReservation.contract.test.d.ts.map +0 -1
- package/dist/connection/__tests__/portReservation.contract.test.js +0 -250
- package/dist/connection/__tests__/portReservation.contract.test.js.map +0 -1
- package/dist/connection/cdp.d.ts.map +0 -1
- package/dist/connection/cdp.js.map +0 -1
- package/dist/connection/config.d.ts.map +0 -1
- package/dist/connection/config.js.map +0 -1
- package/dist/connection/diagnostics.d.ts.map +0 -1
- package/dist/connection/diagnostics.js.map +0 -1
- package/dist/connection/errors.d.ts.map +0 -1
- package/dist/connection/errors.js.map +0 -1
- package/dist/connection/events.d.ts.map +0 -1
- package/dist/connection/events.js.map +0 -1
- package/dist/connection/handlers.d.ts.map +0 -1
- package/dist/connection/handlers.js.map +0 -1
- package/dist/connection/launcher/binaryResolver.d.ts.map +0 -1
- package/dist/connection/launcher/binaryResolver.js.map +0 -1
- package/dist/connection/launcher/flagsBuilder.d.ts.map +0 -1
- package/dist/connection/launcher/flagsBuilder.js.map +0 -1
- package/dist/connection/launcher/preferencesLoader.d.ts.map +0 -1
- package/dist/connection/launcher/preferencesLoader.js.map +0 -1
- package/dist/connection/launcher.d.ts.map +0 -1
- package/dist/connection/launcher.js.map +0 -1
- package/dist/connection/pageReadiness.d.ts.map +0 -1
- package/dist/connection/pageReadiness.js.map +0 -1
- package/dist/connection/portReservation.d.ts.map +0 -1
- package/dist/connection/portReservation.js.map +0 -1
- package/dist/connection/typed-cdp.d.ts.map +0 -1
- package/dist/connection/typed-cdp.js.map +0 -1
- package/dist/connection/types.d.ts.map +0 -1
- package/dist/connection/types.js.map +0 -1
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js.map +0 -1
- package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts +0 -8
- package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/JsonlParser.unit.test.js +0 -140
- package/dist/daemon/__tests__/JsonlParser.unit.test.js.map +0 -1
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts +0 -8
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.js +0 -276
- package/dist/daemon/__tests__/PendingRequestManager.unit.test.js.map +0 -1
- package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts +0 -8
- package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/TelemetryStore.unit.test.js +0 -290
- package/dist/daemon/__tests__/TelemetryStore.unit.test.js.map +0 -1
- package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts +0 -8
- package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/commandRegistry.contract.test.js +0 -647
- package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +0 -1
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +0 -19
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +0 -212
- package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +0 -1
- package/dist/daemon/__tests__/ipcServer.contract.test.d.ts +0 -23
- package/dist/daemon/__tests__/ipcServer.contract.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/ipcServer.contract.test.js +0 -416
- package/dist/daemon/__tests__/ipcServer.contract.test.js.map +0 -1
- package/dist/daemon/__tests__/launcher.unit.test.d.ts +0 -8
- package/dist/daemon/__tests__/launcher.unit.test.d.ts.map +0 -1
- package/dist/daemon/__tests__/launcher.unit.test.js +0 -20
- package/dist/daemon/__tests__/launcher.unit.test.js.map +0 -1
- package/dist/daemon/errors.d.ts.map +0 -1
- package/dist/daemon/errors.js.map +0 -1
- package/dist/daemon/handlers/BaseHandler.d.ts +0 -75
- package/dist/daemon/handlers/BaseHandler.d.ts.map +0 -1
- package/dist/daemon/handlers/BaseHandler.js +0 -103
- package/dist/daemon/handlers/BaseHandler.js.map +0 -1
- package/dist/daemon/handlers/CommandHandlers.d.ts +0 -36
- package/dist/daemon/handlers/CommandHandlers.d.ts.map +0 -1
- package/dist/daemon/handlers/CommandHandlers.js +0 -60
- package/dist/daemon/handlers/CommandHandlers.js.map +0 -1
- package/dist/daemon/handlers/QueryHandlers.d.ts +0 -37
- package/dist/daemon/handlers/QueryHandlers.d.ts.map +0 -1
- package/dist/daemon/handlers/QueryHandlers.js +0 -126
- package/dist/daemon/handlers/QueryHandlers.js.map +0 -1
- package/dist/daemon/handlers/SessionHandlers.d.ts +0 -32
- package/dist/daemon/handlers/SessionHandlers.d.ts.map +0 -1
- package/dist/daemon/handlers/SessionHandlers.js +0 -213
- package/dist/daemon/handlers/SessionHandlers.js.map +0 -1
- package/dist/daemon/handlers/pendingRequests.d.ts +0 -50
- package/dist/daemon/handlers/pendingRequests.d.ts.map +0 -1
- package/dist/daemon/handlers/pendingRequests.js +0 -57
- package/dist/daemon/handlers/pendingRequests.js.map +0 -1
- package/dist/daemon/handlers/requestHandlers.d.ts +0 -55
- package/dist/daemon/handlers/requestHandlers.d.ts.map +0 -1
- package/dist/daemon/handlers/requestHandlers.js +0 -66
- package/dist/daemon/handlers/requestHandlers.js.map +0 -1
- package/dist/daemon/handlers/responseHandler.d.ts +0 -42
- package/dist/daemon/handlers/responseHandler.d.ts.map +0 -1
- package/dist/daemon/handlers/responseHandler.js +0 -217
- package/dist/daemon/handlers/responseHandler.js.map +0 -1
- package/dist/daemon/ipcServer.d.ts.map +0 -1
- package/dist/daemon/ipcServer.js.map +0 -1
- package/dist/daemon/launcher.d.ts.map +0 -1
- package/dist/daemon/launcher.js.map +0 -1
- package/dist/daemon/lifecycle/cdpSetup.d.ts +0 -24
- package/dist/daemon/lifecycle/cdpSetup.d.ts.map +0 -1
- package/dist/daemon/lifecycle/cdpSetup.js +0 -55
- package/dist/daemon/lifecycle/cdpSetup.js.map +0 -1
- package/dist/daemon/lifecycle/chromeConnection.d.ts +0 -17
- package/dist/daemon/lifecycle/chromeConnection.d.ts.map +0 -1
- package/dist/daemon/lifecycle/chromeConnection.js +0 -79
- package/dist/daemon/lifecycle/chromeConnection.js.map +0 -1
- package/dist/daemon/lifecycle/signalHandlers.d.ts +0 -14
- package/dist/daemon/lifecycle/signalHandlers.d.ts.map +0 -1
- package/dist/daemon/lifecycle/signalHandlers.js +0 -48
- package/dist/daemon/lifecycle/signalHandlers.js.map +0 -1
- package/dist/daemon/lifecycle/workerCleanup.d.ts +0 -27
- package/dist/daemon/lifecycle/workerCleanup.d.ts.map +0 -1
- package/dist/daemon/lifecycle/workerCleanup.js +0 -143
- package/dist/daemon/lifecycle/workerCleanup.js.map +0 -1
- package/dist/daemon/lifecycle/workerConfig.d.ts +0 -14
- package/dist/daemon/lifecycle/workerConfig.d.ts.map +0 -1
- package/dist/daemon/lifecycle/workerConfig.js +0 -69
- package/dist/daemon/lifecycle/workerConfig.js.map +0 -1
- package/dist/daemon/lifecycle/workerIpc.d.ts +0 -14
- package/dist/daemon/lifecycle/workerIpc.d.ts.map +0 -1
- package/dist/daemon/lifecycle/workerIpc.js +0 -86
- package/dist/daemon/lifecycle/workerIpc.js.map +0 -1
- package/dist/daemon/patternDefinitions.d.ts.map +0 -1
- package/dist/daemon/patternDefinitions.js.map +0 -1
- package/dist/daemon/patternDetector.d.ts.map +0 -1
- package/dist/daemon/patternDetector.js.map +0 -1
- package/dist/daemon/server/JsonlParser.d.ts +0 -31
- package/dist/daemon/server/JsonlParser.d.ts.map +0 -1
- package/dist/daemon/server/JsonlParser.js +0 -55
- package/dist/daemon/server/JsonlParser.js.map +0 -1
- package/dist/daemon/server/SocketServer.d.ts.map +0 -1
- package/dist/daemon/server/SocketServer.js.map +0 -1
- package/dist/daemon/server/WorkerManager.d.ts +0 -36
- package/dist/daemon/server/WorkerManager.d.ts.map +0 -1
- package/dist/daemon/server/WorkerManager.js +0 -89
- package/dist/daemon/server/WorkerManager.js.map +0 -1
- package/dist/daemon/services/SessionService.d.ts +0 -87
- package/dist/daemon/services/SessionService.d.ts.map +0 -1
- package/dist/daemon/services/SessionService.js +0 -45
- package/dist/daemon/services/SessionService.js.map +0 -1
- package/dist/daemon/startSession.d.ts +0 -55
- package/dist/daemon/startSession.d.ts.map +0 -1
- package/dist/daemon/startSession.js +0 -168
- package/dist/daemon/startSession.js.map +0 -1
- package/dist/daemon/worker/TelemetryStore.d.ts +0 -19
- package/dist/daemon/worker/TelemetryStore.d.ts.map +0 -1
- package/dist/daemon/worker/TelemetryStore.js +0 -53
- package/dist/daemon/worker/TelemetryStore.js.map +0 -1
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts +0 -11
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts.map +0 -1
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js +0 -136
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js.map +0 -1
- package/dist/daemon/worker/collectors.d.ts.map +0 -1
- package/dist/daemon/worker/collectors.js.map +0 -1
- package/dist/daemon/worker/commandRegistry.d.ts.map +0 -1
- package/dist/daemon/worker/commandRegistry.js +0 -236
- package/dist/daemon/worker/commandRegistry.js.map +0 -1
- package/dist/daemon/worker/plugins.d.ts.map +0 -1
- package/dist/daemon/worker/plugins.js +0 -75
- package/dist/daemon/worker/plugins.js.map +0 -1
- package/dist/daemon/worker/types.d.ts.map +0 -1
- package/dist/daemon/worker/types.js.map +0 -1
- package/dist/daemon/worker.d.ts +0 -9
- package/dist/daemon/worker.d.ts.map +0 -1
- package/dist/daemon/worker.js +0 -98
- package/dist/daemon/worker.js.map +0 -1
- package/dist/daemon/workerIpc.d.ts +0 -33
- package/dist/daemon/workerIpc.d.ts.map +0 -1
- package/dist/daemon/workerIpc.js +0 -8
- package/dist/daemon/workerIpc.js.map +0 -1
- package/dist/daemon.d.ts.map +0 -1
- package/dist/daemon.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/ipc/__tests__/client.contract.test.d.ts +0 -8
- package/dist/ipc/__tests__/client.contract.test.d.ts.map +0 -1
- package/dist/ipc/__tests__/client.contract.test.js +0 -693
- package/dist/ipc/__tests__/client.contract.test.js.map +0 -1
- package/dist/ipc/__tests__/errors.unit.test.d.ts +0 -7
- package/dist/ipc/__tests__/errors.unit.test.d.ts.map +0 -1
- package/dist/ipc/__tests__/errors.unit.test.js +0 -77
- package/dist/ipc/__tests__/errors.unit.test.js.map +0 -1
- package/dist/ipc/__tests__/guards.unit.test.d.ts +0 -7
- package/dist/ipc/__tests__/guards.unit.test.d.ts.map +0 -1
- package/dist/ipc/__tests__/guards.unit.test.js +0 -73
- package/dist/ipc/__tests__/guards.unit.test.js.map +0 -1
- package/dist/ipc/__tests__/jsonl.unit.test.d.ts +0 -7
- package/dist/ipc/__tests__/jsonl.unit.test.d.ts.map +0 -1
- package/dist/ipc/__tests__/jsonl.unit.test.js +0 -103
- package/dist/ipc/__tests__/jsonl.unit.test.js.map +0 -1
- package/dist/ipc/__tests__/validation.unit.test.d.ts +0 -7
- package/dist/ipc/__tests__/validation.unit.test.d.ts.map +0 -1
- package/dist/ipc/__tests__/validation.unit.test.js +0 -60
- package/dist/ipc/__tests__/validation.unit.test.js.map +0 -1
- package/dist/ipc/client.d.ts.map +0 -1
- package/dist/ipc/client.js.map +0 -1
- package/dist/ipc/index.d.ts.map +0 -1
- package/dist/ipc/index.js.map +0 -1
- package/dist/ipc/protocol/commands.d.ts.map +0 -1
- package/dist/ipc/protocol/commands.js.map +0 -1
- package/dist/ipc/protocol/guards.d.ts.map +0 -1
- package/dist/ipc/protocol/guards.js.map +0 -1
- package/dist/ipc/protocol/index.d.ts.map +0 -1
- package/dist/ipc/protocol/index.js.map +0 -1
- package/dist/ipc/protocol/messages.d.ts.map +0 -1
- package/dist/ipc/protocol/messages.js.map +0 -1
- package/dist/ipc/session/errors.d.ts.map +0 -1
- package/dist/ipc/session/errors.js.map +0 -1
- package/dist/ipc/session/index.d.ts.map +0 -1
- package/dist/ipc/session/index.js.map +0 -1
- package/dist/ipc/session/lifecycle.d.ts.map +0 -1
- package/dist/ipc/session/lifecycle.js.map +0 -1
- package/dist/ipc/session/queries.d.ts.map +0 -1
- package/dist/ipc/session/queries.js.map +0 -1
- package/dist/ipc/session/types.d.ts.map +0 -1
- package/dist/ipc/session/types.js.map +0 -1
- package/dist/ipc/transport/IPCError.d.ts.map +0 -1
- package/dist/ipc/transport/IPCError.js.map +0 -1
- package/dist/ipc/transport/errors.d.ts.map +0 -1
- package/dist/ipc/transport/errors.js.map +0 -1
- package/dist/ipc/transport/index.d.ts.map +0 -1
- package/dist/ipc/transport/index.js.map +0 -1
- package/dist/ipc/transport/jsonl.d.ts.map +0 -1
- package/dist/ipc/transport/jsonl.js.map +0 -1
- package/dist/ipc/transport/socket.d.ts.map +0 -1
- package/dist/ipc/transport/socket.js.map +0 -1
- package/dist/ipc/transport/validation.d.ts.map +0 -1
- package/dist/ipc/transport/validation.js.map +0 -1
- package/dist/ipc/utils/errors.d.ts.map +0 -1
- package/dist/ipc/utils/errors.js.map +0 -1
- package/dist/ipc/utils/index.d.ts.map +0 -1
- package/dist/ipc/utils/index.js.map +0 -1
- package/dist/ipc/utils/requestId.d.ts +0 -23
- package/dist/ipc/utils/requestId.d.ts.map +0 -1
- package/dist/ipc/utils/requestId.js +0 -27
- package/dist/ipc/utils/requestId.js.map +0 -1
- package/dist/ipc/utils/responseValidator.d.ts.map +0 -1
- package/dist/ipc/utils/responseValidator.js.map +0 -1
- package/dist/ipc/utils/session.d.ts.map +0 -1
- package/dist/ipc/utils/session.js.map +0 -1
- package/dist/ipc/utils/types.d.ts.map +0 -1
- package/dist/ipc/utils/types.js.map +0 -1
- package/dist/session/QueryCacheManager.d.ts.map +0 -1
- package/dist/session/QueryCacheManager.js.map +0 -1
- package/dist/session/__tests__/chrome-cache.contract.test.d.ts +0 -7
- package/dist/session/__tests__/chrome-cache.contract.test.d.ts.map +0 -1
- package/dist/session/__tests__/chrome-cache.contract.test.js +0 -77
- package/dist/session/__tests__/chrome-cache.contract.test.js.map +0 -1
- package/dist/session/__tests__/cleanup.contract.test.d.ts +0 -7
- package/dist/session/__tests__/cleanup.contract.test.d.ts.map +0 -1
- package/dist/session/__tests__/cleanup.contract.test.js +0 -84
- package/dist/session/__tests__/cleanup.contract.test.js.map +0 -1
- package/dist/session/__tests__/lock.contract.test.d.ts +0 -7
- package/dist/session/__tests__/lock.contract.test.d.ts.map +0 -1
- package/dist/session/__tests__/lock.contract.test.js +0 -77
- package/dist/session/__tests__/lock.contract.test.js.map +0 -1
- package/dist/session/__tests__/metadata.contract.test.d.ts +0 -7
- package/dist/session/__tests__/metadata.contract.test.d.ts.map +0 -1
- package/dist/session/__tests__/metadata.contract.test.js +0 -87
- package/dist/session/__tests__/metadata.contract.test.js.map +0 -1
- package/dist/session/chrome.d.ts.map +0 -1
- package/dist/session/chrome.js.map +0 -1
- package/dist/session/cleanup.d.ts +0 -141
- package/dist/session/cleanup.d.ts.map +0 -1
- package/dist/session/cleanup.js +0 -514
- package/dist/session/cleanup.js.map +0 -1
- package/dist/session/lock.d.ts +0 -57
- package/dist/session/lock.d.ts.map +0 -1
- package/dist/session/lock.js +0 -165
- package/dist/session/lock.js.map +0 -1
- package/dist/session/metadata.d.ts.map +0 -1
- package/dist/session/metadata.js.map +0 -1
- package/dist/session/output.d.ts +0 -18
- package/dist/session/output.d.ts.map +0 -1
- package/dist/session/output.js +0 -24
- package/dist/session/output.js.map +0 -1
- package/dist/session/paths.d.ts.map +0 -1
- package/dist/session/paths.js.map +0 -1
- package/dist/session/pid.d.ts.map +0 -1
- package/dist/session/pid.js.map +0 -1
- package/dist/session/port.d.ts.map +0 -1
- package/dist/session/port.js.map +0 -1
- package/dist/session/process.d.ts +0 -8
- package/dist/session/process.d.ts.map +0 -1
- package/dist/session/process.js +0 -8
- package/dist/session/process.js.map +0 -1
- package/dist/session/queryCache.d.ts +0 -46
- package/dist/session/queryCache.d.ts.map +0 -1
- package/dist/session/queryCache.js +0 -54
- package/dist/session/queryCache.js.map +0 -1
- package/dist/session/statusData.d.ts.map +0 -1
- package/dist/session/statusData.js.map +0 -1
- package/dist/telemetry/__tests__/a11y.unit.test.d.ts +0 -10
- package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/a11y.unit.test.js +0 -265
- package/dist/telemetry/__tests__/a11y.unit.test.js.map +0 -1
- package/dist/telemetry/__tests__/filters.unit.test.d.ts +0 -2
- package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/filters.unit.test.js +0 -357
- package/dist/telemetry/__tests__/filters.unit.test.js.map +0 -1
- package/dist/telemetry/__tests__/navigation.contract.test.d.ts +0 -8
- package/dist/telemetry/__tests__/navigation.contract.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/navigation.contract.test.js +0 -211
- package/dist/telemetry/__tests__/navigation.contract.test.js.map +0 -1
- package/dist/telemetry/__tests__/network.contract.test.d.ts +0 -8
- package/dist/telemetry/__tests__/network.contract.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/network.contract.test.js +0 -623
- package/dist/telemetry/__tests__/network.contract.test.js.map +0 -1
- package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts +0 -2
- package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/remoteObject.unit.test.js +0 -261
- package/dist/telemetry/__tests__/remoteObject.unit.test.js.map +0 -1
- package/dist/telemetry/__tests__/roleInference.unit.test.d.ts +0 -9
- package/dist/telemetry/__tests__/roleInference.unit.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/roleInference.unit.test.js +0 -138
- package/dist/telemetry/__tests__/roleInference.unit.test.js.map +0 -1
- package/dist/telemetry/__tests__/utils.unit.test.d.ts +0 -7
- package/dist/telemetry/__tests__/utils.unit.test.d.ts.map +0 -1
- package/dist/telemetry/__tests__/utils.unit.test.js +0 -91
- package/dist/telemetry/__tests__/utils.unit.test.js.map +0 -1
- package/dist/telemetry/a11y.d.ts.map +0 -1
- package/dist/telemetry/a11y.js.map +0 -1
- package/dist/telemetry/console.d.ts.map +0 -1
- package/dist/telemetry/console.js.map +0 -1
- package/dist/telemetry/dialogs.d.ts.map +0 -1
- package/dist/telemetry/dialogs.js.map +0 -1
- package/dist/telemetry/dom.d.ts.map +0 -1
- package/dist/telemetry/dom.js.map +0 -1
- package/dist/telemetry/filterDsl.d.ts.map +0 -1
- package/dist/telemetry/filterDsl.js.map +0 -1
- package/dist/telemetry/filterPresets.d.ts.map +0 -1
- package/dist/telemetry/filterPresets.js.map +0 -1
- package/dist/telemetry/filters.d.ts.map +0 -1
- package/dist/telemetry/filters.js.map +0 -1
- package/dist/telemetry/har/__tests__/builder.unit.test.d.ts +0 -8
- package/dist/telemetry/har/__tests__/builder.unit.test.d.ts.map +0 -1
- package/dist/telemetry/har/__tests__/builder.unit.test.js +0 -694
- package/dist/telemetry/har/__tests__/builder.unit.test.js.map +0 -1
- package/dist/telemetry/har/builder.d.ts.map +0 -1
- package/dist/telemetry/har/builder.js.map +0 -1
- package/dist/telemetry/har/types.d.ts.map +0 -1
- package/dist/telemetry/har/types.js.map +0 -1
- package/dist/telemetry/navigation.d.ts.map +0 -1
- package/dist/telemetry/navigation.js.map +0 -1
- package/dist/telemetry/network.d.ts.map +0 -1
- package/dist/telemetry/network.js.map +0 -1
- package/dist/telemetry/objectExpander.d.ts.map +0 -1
- package/dist/telemetry/objectExpander.js.map +0 -1
- package/dist/telemetry/remoteObject.d.ts.map +0 -1
- package/dist/telemetry/remoteObject.js.map +0 -1
- package/dist/telemetry/remoteObjectUtils.d.ts.map +0 -1
- package/dist/telemetry/remoteObjectUtils.js.map +0 -1
- package/dist/telemetry/roleInference.d.ts.map +0 -1
- package/dist/telemetry/roleInference.js.map +0 -1
- package/dist/telemetry/utils.d.ts.map +0 -1
- package/dist/telemetry/utils.js.map +0 -1
- package/dist/types/dom.d.ts +0 -77
- package/dist/types/dom.d.ts.map +0 -1
- package/dist/types/dom.js +0 -8
- package/dist/types/dom.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/ui/OutputBuilder.d.ts.map +0 -1
- package/dist/ui/OutputBuilder.js.map +0 -1
- package/dist/ui/errors/CommandError.d.ts.map +0 -1
- package/dist/ui/errors/CommandError.js.map +0 -1
- package/dist/ui/errors/index.d.ts.map +0 -1
- package/dist/ui/errors/index.js.map +0 -1
- package/dist/ui/errors/utils.d.ts.map +0 -1
- package/dist/ui/errors/utils.js.map +0 -1
- package/dist/ui/formatters/__tests__/preview.unit.test.d.ts +0 -13
- package/dist/ui/formatters/__tests__/preview.unit.test.d.ts.map +0 -1
- package/dist/ui/formatters/__tests__/preview.unit.test.js +0 -180
- package/dist/ui/formatters/__tests__/preview.unit.test.js.map +0 -1
- package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +0 -2
- package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +0 -1
- package/dist/ui/formatters/__tests__/semantic.unit.test.js +0 -111
- package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +0 -1
- package/dist/ui/formatters/a11y.d.ts.map +0 -1
- package/dist/ui/formatters/a11y.js.map +0 -1
- package/dist/ui/formatters/console.d.ts.map +0 -1
- package/dist/ui/formatters/console.js.map +0 -1
- package/dist/ui/formatters/cookies.d.ts.map +0 -1
- package/dist/ui/formatters/cookies.js.map +0 -1
- package/dist/ui/formatters/details.d.ts.map +0 -1
- package/dist/ui/formatters/details.js.map +0 -1
- package/dist/ui/formatters/dom.d.ts.map +0 -1
- package/dist/ui/formatters/dom.js.map +0 -1
- package/dist/ui/formatters/form.d.ts.map +0 -1
- package/dist/ui/formatters/form.js.map +0 -1
- package/dist/ui/formatters/helpFormatters.d.ts.map +0 -1
- package/dist/ui/formatters/helpFormatters.js.map +0 -1
- package/dist/ui/formatters/index.d.ts.map +0 -1
- package/dist/ui/formatters/index.js.map +0 -1
- package/dist/ui/formatters/networkHeaders.d.ts.map +0 -1
- package/dist/ui/formatters/networkHeaders.js.map +0 -1
- package/dist/ui/formatters/networkList.d.ts.map +0 -1
- package/dist/ui/formatters/networkList.js.map +0 -1
- package/dist/ui/formatters/preview.d.ts.map +0 -1
- package/dist/ui/formatters/preview.js.map +0 -1
- package/dist/ui/formatters/semantic.d.ts.map +0 -1
- package/dist/ui/formatters/semantic.js.map +0 -1
- package/dist/ui/formatters/sessionFormatters.d.ts.map +0 -1
- package/dist/ui/formatters/sessionFormatters.js.map +0 -1
- package/dist/ui/formatters/status.d.ts.map +0 -1
- package/dist/ui/formatters/status.js.map +0 -1
- package/dist/ui/formatting.d.ts.map +0 -1
- package/dist/ui/formatting.js.map +0 -1
- package/dist/ui/logging/index.d.ts.map +0 -1
- package/dist/ui/logging/index.js.map +0 -1
- package/dist/ui/logging/logger.d.ts.map +0 -1
- package/dist/ui/logging/logger.js.map +0 -1
- package/dist/ui/messages/chrome.d.ts.map +0 -1
- package/dist/ui/messages/chrome.js.map +0 -1
- package/dist/ui/messages/commands.d.ts.map +0 -1
- package/dist/ui/messages/commands.js.map +0 -1
- package/dist/ui/messages/consoleMessages.d.ts.map +0 -1
- package/dist/ui/messages/consoleMessages.js.map +0 -1
- package/dist/ui/messages/debug.d.ts +0 -168
- package/dist/ui/messages/debug.d.ts.map +0 -1
- package/dist/ui/messages/debug.js +0 -219
- package/dist/ui/messages/debug.js.map +0 -1
- package/dist/ui/messages/dom.d.ts +0 -14
- package/dist/ui/messages/dom.d.ts.map +0 -1
- package/dist/ui/messages/dom.js +0 -28
- package/dist/ui/messages/dom.js.map +0 -1
- package/dist/ui/messages/errors.d.ts +0 -233
- package/dist/ui/messages/errors.d.ts.map +0 -1
- package/dist/ui/messages/errors.js +0 -395
- package/dist/ui/messages/errors.js.map +0 -1
- package/dist/ui/messages/hints.d.ts.map +0 -1
- package/dist/ui/messages/hints.js.map +0 -1
- package/dist/ui/messages/internal.d.ts +0 -23
- package/dist/ui/messages/internal.d.ts.map +0 -1
- package/dist/ui/messages/internal.js +0 -27
- package/dist/ui/messages/internal.js.map +0 -1
- package/dist/ui/messages/networkMessages.d.ts.map +0 -1
- package/dist/ui/messages/networkMessages.js.map +0 -1
- package/dist/ui/messages/preview.d.ts.map +0 -1
- package/dist/ui/messages/preview.js.map +0 -1
- package/dist/ui/messages/session.d.ts.map +0 -1
- package/dist/ui/messages/session.js.map +0 -1
- package/dist/ui/messages/validation.d.ts.map +0 -1
- package/dist/ui/messages/validation.js.map +0 -1
- package/dist/utils/__tests__/atomicFile.test.d.ts +0 -2
- package/dist/utils/__tests__/atomicFile.test.d.ts.map +0 -1
- package/dist/utils/__tests__/atomicFile.test.js +0 -43
- package/dist/utils/__tests__/atomicFile.test.js.map +0 -1
- package/dist/utils/__tests__/errors.unit.test.d.ts +0 -12
- package/dist/utils/__tests__/errors.unit.test.d.ts.map +0 -1
- package/dist/utils/__tests__/errors.unit.test.js +0 -255
- package/dist/utils/__tests__/errors.unit.test.js.map +0 -1
- package/dist/utils/__tests__/http.unit.test.d.ts +0 -12
- package/dist/utils/__tests__/http.unit.test.d.ts.map +0 -1
- package/dist/utils/__tests__/http.unit.test.js +0 -218
- package/dist/utils/__tests__/http.unit.test.js.map +0 -1
- package/dist/utils/__tests__/objects.test.d.ts +0 -2
- package/dist/utils/__tests__/objects.test.d.ts.map +0 -1
- package/dist/utils/__tests__/objects.test.js +0 -50
- package/dist/utils/__tests__/objects.test.js.map +0 -1
- package/dist/utils/__tests__/process.unit.test.d.ts +0 -14
- package/dist/utils/__tests__/process.unit.test.d.ts.map +0 -1
- package/dist/utils/__tests__/process.unit.test.js +0 -124
- package/dist/utils/__tests__/process.unit.test.js.map +0 -1
- package/dist/utils/__tests__/session.contract.test.d.ts +0 -2
- package/dist/utils/__tests__/session.contract.test.d.ts.map +0 -1
- package/dist/utils/__tests__/session.contract.test.js +0 -258
- package/dist/utils/__tests__/session.contract.test.js.map +0 -1
- package/dist/utils/__tests__/shellDetection.unit.test.d.ts +0 -12
- package/dist/utils/__tests__/shellDetection.unit.test.d.ts.map +0 -1
- package/dist/utils/__tests__/shellDetection.unit.test.js +0 -220
- package/dist/utils/__tests__/shellDetection.unit.test.js.map +0 -1
- package/dist/utils/__tests__/url.test.d.ts +0 -2
- package/dist/utils/__tests__/url.test.d.ts.map +0 -1
- package/dist/utils/__tests__/url.test.js +0 -42
- package/dist/utils/__tests__/url.test.js.map +0 -1
- package/dist/utils/async.d.ts.map +0 -1
- package/dist/utils/async.js.map +0 -1
- package/dist/utils/atomicFile.d.ts.map +0 -1
- package/dist/utils/atomicFile.js.map +0 -1
- package/dist/utils/concurrency.d.ts.map +0 -1
- package/dist/utils/concurrency.js.map +0 -1
- package/dist/utils/daemonErrors.d.ts +0 -60
- package/dist/utils/daemonErrors.d.ts.map +0 -1
- package/dist/utils/daemonErrors.js +0 -58
- package/dist/utils/daemonErrors.js.map +0 -1
- package/dist/utils/decisionTrees.d.ts.map +0 -1
- package/dist/utils/decisionTrees.js.map +0 -1
- package/dist/utils/errorMapping.d.ts.map +0 -1
- package/dist/utils/errorMapping.js.map +0 -1
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/exitCodes.d.ts.map +0 -1
- package/dist/utils/exitCodes.js.map +0 -1
- package/dist/utils/file.d.ts.map +0 -1
- package/dist/utils/file.js.map +0 -1
- package/dist/utils/http.d.ts.map +0 -1
- package/dist/utils/http.js.map +0 -1
- package/dist/utils/levenshtein.d.ts.map +0 -1
- package/dist/utils/levenshtein.js.map +0 -1
- package/dist/utils/objects.d.ts.map +0 -1
- package/dist/utils/objects.js.map +0 -1
- package/dist/utils/process.d.ts.map +0 -1
- package/dist/utils/process.js.map +0 -1
- package/dist/utils/shellDetection.d.ts.map +0 -1
- package/dist/utils/shellDetection.js.map +0 -1
- package/dist/utils/strings.d.ts.map +0 -1
- package/dist/utils/strings.js.map +0 -1
- package/dist/utils/suggestions.d.ts.map +0 -1
- package/dist/utils/suggestions.js.map +0 -1
- package/dist/utils/taskMappings.d.ts.map +0 -1
- package/dist/utils/taskMappings.js.map +0 -1
- package/dist/utils/typeGuards.d.ts.map +0 -1
- package/dist/utils/typeGuards.js.map +0 -1
- package/dist/utils/url.d.ts.map +0 -1
- package/dist/utils/url.js.map +0 -1
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js.map +0 -1
- package/dist/utils/version.d.ts.map +0 -1
- package/dist/utils/version.js.map +0 -1
- /package/dist/daemon/{worker → session}/commandRegistry.d.ts +0 -0
- /package/dist/daemon/{worker → session}/types.js +0 -0
- /package/dist/{ui/errors → errors}/CommandError.d.ts +0 -0
- /package/dist/{ui/errors → errors}/index.js +0 -0
- /package/dist/{ui/errors → errors}/utils.d.ts +0 -0
- /package/dist/{commands → runtime}/dom/formTypes.js +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bdg dom query` — find elements by CSS selector and populate the query cache.
|
|
3
|
+
*/
|
|
4
|
+
import { queryDOMElements } from './helpers/index.js';
|
|
5
|
+
import { runCommand } from '../shared/CommandRunner.js';
|
|
6
|
+
import { noNodesFoundError } from '../../errors/messages.js';
|
|
7
|
+
import { QueryCacheManager } from '../../session/QueryCacheManager.js';
|
|
8
|
+
import { formatDomQuery } from '../../ui/formatters/dom.js';
|
|
9
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
10
|
+
/**
|
|
11
|
+
* Handle `bdg dom query <selector>`.
|
|
12
|
+
*
|
|
13
|
+
* Runs the selector, caches the result set so later commands can reference
|
|
14
|
+
* elements by index, and renders the result either as JSON or human output.
|
|
15
|
+
* No match exits 83, like `dom get` and `dom a11y`, and clears the cache so
|
|
16
|
+
* indices of an earlier query are not used by mistake.
|
|
17
|
+
*/
|
|
18
|
+
export async function handleDomQuery(selector, options) {
|
|
19
|
+
await runCommand(async () => {
|
|
20
|
+
const result = await queryDOMElements(selector);
|
|
21
|
+
const cache = QueryCacheManager.getInstance();
|
|
22
|
+
if (result.count === 0) {
|
|
23
|
+
await cache.clear();
|
|
24
|
+
const err = noNodesFoundError(selector);
|
|
25
|
+
return {
|
|
26
|
+
success: false,
|
|
27
|
+
error: err.message,
|
|
28
|
+
exitCode: EXIT_CODES.RESOURCE_NOT_FOUND,
|
|
29
|
+
errorContext: { suggestion: err.suggestion },
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
await cache.set(result);
|
|
33
|
+
return { success: true, data: result };
|
|
34
|
+
}, options, formatDomQuery);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bdg dom screenshot` — capture page, element, or frame-sequence screenshots.
|
|
3
|
+
*/
|
|
4
|
+
import type { DomScreenshotCommandOptions } from '../shared/optionTypes.js';
|
|
5
|
+
/**
|
|
6
|
+
* Pick the image format for a file: `--format` if given, else the extension.
|
|
7
|
+
*
|
|
8
|
+
* @param outputPath - File to write
|
|
9
|
+
* @param requested - `--format` value
|
|
10
|
+
* @returns Format to capture in
|
|
11
|
+
* @throws CommandError (81) when the extension and `--format` disagree or the
|
|
12
|
+
* extension names a format Chrome cannot capture
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveImageFormat(outputPath: string, requested?: 'png' | 'jpeg'): 'png' | 'jpeg';
|
|
15
|
+
/**
|
|
16
|
+
* Handle `bdg dom screenshot <path>`.
|
|
17
|
+
*
|
|
18
|
+
* Dispatches to page, element, or sequence capture based on flags.
|
|
19
|
+
*/
|
|
20
|
+
export declare function handleDomScreenshot(outputPath: string, options: DomScreenshotCommandOptions): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=screenshot.d.ts.map
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bdg dom screenshot` — capture page, element, or frame-sequence screenshots.
|
|
3
|
+
*/
|
|
4
|
+
import { extname } from 'path';
|
|
5
|
+
import { DomElementResolver } from './DomElementResolver.js';
|
|
6
|
+
import { capturePageScreenshot, captureElementScreenshot, resolveSelector, } from './helpers/index.js';
|
|
7
|
+
import { runCommand } from '../shared/CommandRunner.js';
|
|
8
|
+
import { assertFilePath, outputPathError } from '../shared/outputFile.js';
|
|
9
|
+
import { positiveIntRule } from '../shared/validation.js';
|
|
10
|
+
import { CommandError } from '../../errors/index.js';
|
|
11
|
+
import { conflictingOptionsMessage, genericError } from '../../errors/messages.js';
|
|
12
|
+
import { missingArgumentError } from '../../errors/messages.js';
|
|
13
|
+
import { OutputBuilder, buildSuccessResponse } from '../../ui/OutputBuilder.js';
|
|
14
|
+
import { formatDomScreenshot } from '../../ui/formatters/dom.js';
|
|
15
|
+
import { createLogger } from '../../ui/logging/index.js';
|
|
16
|
+
import { delay } from '../../utils/async.js';
|
|
17
|
+
import { getErrorMessage } from '../../utils/errors.js';
|
|
18
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
19
|
+
import { filterDefined } from '../../utils/objects.js';
|
|
20
|
+
const log = createLogger('dom');
|
|
21
|
+
/** Image format of each file extension Chrome can write */
|
|
22
|
+
const EXTENSION_FORMATS = {
|
|
23
|
+
'.png': 'png',
|
|
24
|
+
'.jpg': 'jpeg',
|
|
25
|
+
'.jpeg': 'jpeg',
|
|
26
|
+
};
|
|
27
|
+
/** Image extensions Chrome cannot capture (writing PNG bytes to them would mislead) */
|
|
28
|
+
const UNSUPPORTED_EXTENSIONS = new Set(['.gif', '.webp', '.bmp', '.tif', '.tiff', '.avif', '.svg']);
|
|
29
|
+
/**
|
|
30
|
+
* Pick the image format for a file: `--format` if given, else the extension.
|
|
31
|
+
*
|
|
32
|
+
* @param outputPath - File to write
|
|
33
|
+
* @param requested - `--format` value
|
|
34
|
+
* @returns Format to capture in
|
|
35
|
+
* @throws CommandError (81) when the extension and `--format` disagree or the
|
|
36
|
+
* extension names a format Chrome cannot capture
|
|
37
|
+
*/
|
|
38
|
+
export function resolveImageFormat(outputPath, requested) {
|
|
39
|
+
const extension = extname(outputPath).toLowerCase();
|
|
40
|
+
const fromExtension = EXTENSION_FORMATS[extension];
|
|
41
|
+
if (UNSUPPORTED_EXTENSIONS.has(extension) ||
|
|
42
|
+
(requested && fromExtension && requested !== fromExtension)) {
|
|
43
|
+
throw new CommandError(`Cannot write ${requested ?? 'a screenshot'} to a ${extension} file`, {
|
|
44
|
+
suggestion: 'Screenshots are png or jpeg: use a .png or .jpg file name (or --format to match it)',
|
|
45
|
+
}, EXIT_CODES.INVALID_ARGUMENTS);
|
|
46
|
+
}
|
|
47
|
+
return requested ?? fromExtension ?? 'png';
|
|
48
|
+
}
|
|
49
|
+
function buildPageScreenshotOptions(options) {
|
|
50
|
+
return filterDefined({
|
|
51
|
+
format: options.format,
|
|
52
|
+
quality: options.quality,
|
|
53
|
+
fullPage: options.fullPage,
|
|
54
|
+
noResize: options.resize === false,
|
|
55
|
+
scroll: options.scroll,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function buildElementScreenshotOptions(options) {
|
|
59
|
+
return filterDefined({
|
|
60
|
+
format: options.format,
|
|
61
|
+
quality: options.quality,
|
|
62
|
+
noResize: options.resize === false,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function hasElementTarget(options) {
|
|
66
|
+
return options.selector !== undefined || options.index !== undefined;
|
|
67
|
+
}
|
|
68
|
+
async function resolveElementNodeId(options) {
|
|
69
|
+
if (options.index !== undefined) {
|
|
70
|
+
const resolver = DomElementResolver.getInstance();
|
|
71
|
+
const node = await resolver.getNodeIdForIndex(options.index);
|
|
72
|
+
return { backendNodeId: node.nodeId };
|
|
73
|
+
}
|
|
74
|
+
if (options.selector !== undefined) {
|
|
75
|
+
return resolveSelector(options.selector);
|
|
76
|
+
}
|
|
77
|
+
const err = missingArgumentError('--selector "css-selector" or --index N from a previous query');
|
|
78
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
79
|
+
}
|
|
80
|
+
function addElementInfo(result, options) {
|
|
81
|
+
const bounds = result.element?.bounds ?? {
|
|
82
|
+
x: 0,
|
|
83
|
+
y: 0,
|
|
84
|
+
width: result.width,
|
|
85
|
+
height: result.height,
|
|
86
|
+
};
|
|
87
|
+
return {
|
|
88
|
+
...result,
|
|
89
|
+
element: {
|
|
90
|
+
...(options.selector !== undefined && { selector: options.selector }),
|
|
91
|
+
...(options.index !== undefined && { index: options.index }),
|
|
92
|
+
bounds,
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Make sure `--follow` has a directory to write frames to.
|
|
98
|
+
*
|
|
99
|
+
* @param dirPath - Directory the user gave
|
|
100
|
+
* @param fs - File system module
|
|
101
|
+
* @throws CommandError (81) when the path is a file, or naming the problem when it cannot be created
|
|
102
|
+
*/
|
|
103
|
+
function ensureDirectory(dirPath, fs) {
|
|
104
|
+
if (fs.existsSync(dirPath) && !fs.statSync(dirPath).isDirectory()) {
|
|
105
|
+
throw new CommandError(`--follow needs a directory, but ${dirPath} is a file`, { suggestion: 'Give a directory for the frames, e.g. bdg dom screenshot ./frames --follow' }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
106
|
+
}
|
|
107
|
+
try {
|
|
108
|
+
fs.mkdirSync(dirPath, { recursive: true });
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
throw outputPathError(dirPath, error);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
function formatFrameFilename(frameNumber, format) {
|
|
115
|
+
return `${String(frameNumber).padStart(3, '0')}.${format}`;
|
|
116
|
+
}
|
|
117
|
+
async function handlePageScreenshot(outputPath, options) {
|
|
118
|
+
await runCommand(async () => {
|
|
119
|
+
const screenshotOptions = buildPageScreenshotOptions(options);
|
|
120
|
+
const result = await capturePageScreenshot(outputPath, screenshotOptions);
|
|
121
|
+
return { success: true, data: result };
|
|
122
|
+
}, options, formatDomScreenshot);
|
|
123
|
+
}
|
|
124
|
+
async function handleElementScreenshot(outputPath, options) {
|
|
125
|
+
await runCommand(async () => {
|
|
126
|
+
const nodeRef = await resolveElementNodeId(options);
|
|
127
|
+
const screenshotOptions = buildElementScreenshotOptions(options);
|
|
128
|
+
const result = await captureElementScreenshot(outputPath, nodeRef, screenshotOptions);
|
|
129
|
+
const elementResult = addElementInfo(result, options);
|
|
130
|
+
return { success: true, data: elementResult };
|
|
131
|
+
}, options, formatDomScreenshot);
|
|
132
|
+
}
|
|
133
|
+
async function captureSequenceFrame(outputPath, options) {
|
|
134
|
+
if (hasElementTarget(options)) {
|
|
135
|
+
const nodeRef = await resolveElementNodeId(options);
|
|
136
|
+
const elementOptions = buildElementScreenshotOptions(options);
|
|
137
|
+
await captureElementScreenshot(outputPath, nodeRef, elementOptions);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
const pageOptions = buildPageScreenshotOptions(options);
|
|
141
|
+
await capturePageScreenshot(outputPath, pageOptions);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
async function handleSequenceCapture(outputDir, options) {
|
|
145
|
+
const fs = await import('fs');
|
|
146
|
+
const path = await import('path');
|
|
147
|
+
const absoluteDir = path.resolve(outputDir);
|
|
148
|
+
ensureDirectory(absoluteDir, fs);
|
|
149
|
+
const intervalRule = positiveIntRule({ name: '--interval', min: 100, max: 60000, default: 1000 });
|
|
150
|
+
const limitRule = positiveIntRule({ name: '--limit', min: 1, max: 10000, required: false });
|
|
151
|
+
const interval = intervalRule.validate(options.interval);
|
|
152
|
+
const limit = options.limit ? limitRule.validate(options.limit) : 0;
|
|
153
|
+
const format = options.format ?? 'png';
|
|
154
|
+
let frameCount = 0;
|
|
155
|
+
let stopping = false;
|
|
156
|
+
process.once('SIGINT', () => {
|
|
157
|
+
stopping = true;
|
|
158
|
+
});
|
|
159
|
+
console.error(`Capturing to ${absoluteDir} every ${interval}ms...`);
|
|
160
|
+
while (!stopping) {
|
|
161
|
+
frameCount++;
|
|
162
|
+
const filename = formatFrameFilename(frameCount, format);
|
|
163
|
+
const outputPath = path.join(absoluteDir, filename);
|
|
164
|
+
try {
|
|
165
|
+
await captureSequenceFrame(outputPath, options);
|
|
166
|
+
}
|
|
167
|
+
catch (error) {
|
|
168
|
+
reportSequenceError(error, frameCount - 1, options.json ?? false);
|
|
169
|
+
}
|
|
170
|
+
if (options.json) {
|
|
171
|
+
console.log(JSON.stringify(buildSuccessResponse({ frame: frameCount, path: outputPath })));
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
log.info(`Frame ${frameCount}: ${filename}`);
|
|
175
|
+
}
|
|
176
|
+
if (limit > 0 && frameCount >= limit)
|
|
177
|
+
break;
|
|
178
|
+
await delay(interval);
|
|
179
|
+
}
|
|
180
|
+
console.error(`Captured ${frameCount} frames`);
|
|
181
|
+
process.exit(EXIT_CODES.SUCCESS);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* End a capture sequence on an error (e.g. the element disappeared): print
|
|
185
|
+
* it (one JSON line with `--json`, like the frames) and exit with its code.
|
|
186
|
+
*
|
|
187
|
+
* @param error - Capture error
|
|
188
|
+
* @param captured - Frames captured before it
|
|
189
|
+
* @param json - JSON output
|
|
190
|
+
*/
|
|
191
|
+
function reportSequenceError(error, captured, json) {
|
|
192
|
+
const exitCode = error instanceof CommandError ? error.exitCode : EXIT_CODES.SOFTWARE_ERROR;
|
|
193
|
+
const suggestion = error instanceof CommandError && typeof error.metadata['suggestion'] === 'string'
|
|
194
|
+
? error.metadata['suggestion']
|
|
195
|
+
: undefined;
|
|
196
|
+
const message = getErrorMessage(error);
|
|
197
|
+
if (json) {
|
|
198
|
+
console.log(JSON.stringify(OutputBuilder.buildJsonError(message, { exitCode, ...(suggestion && { suggestion }) })));
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
console.error(genericError(message));
|
|
202
|
+
if (suggestion)
|
|
203
|
+
console.error(suggestion);
|
|
204
|
+
}
|
|
205
|
+
console.error(`Captured ${captured} frames`);
|
|
206
|
+
process.exit(exitCode);
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Reject options that would be ignored: `--selector` with `--index` (the
|
|
210
|
+
* index already names an element), and `--quality` for a PNG.
|
|
211
|
+
*
|
|
212
|
+
* @param outputPath - File to write
|
|
213
|
+
* @param options - Command options
|
|
214
|
+
* @throws CommandError (81) for a conflict
|
|
215
|
+
*/
|
|
216
|
+
function assertScreenshotOptions(outputPath, options) {
|
|
217
|
+
let message;
|
|
218
|
+
if (options.selector !== undefined && options.index !== undefined) {
|
|
219
|
+
message = conflictingOptionsMessage('--selector', '--index');
|
|
220
|
+
}
|
|
221
|
+
else if (options.quality !== undefined &&
|
|
222
|
+
!options.follow &&
|
|
223
|
+
resolveImageFormat(outputPath, options.format) === 'png') {
|
|
224
|
+
message = '--quality applies to JPEG only; this screenshot is a PNG';
|
|
225
|
+
}
|
|
226
|
+
if (message)
|
|
227
|
+
throw new CommandError(message, {}, EXIT_CODES.INVALID_ARGUMENTS);
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Handle `bdg dom screenshot <path>`.
|
|
231
|
+
*
|
|
232
|
+
* Dispatches to page, element, or sequence capture based on flags.
|
|
233
|
+
*/
|
|
234
|
+
export async function handleDomScreenshot(outputPath, options) {
|
|
235
|
+
assertScreenshotOptions(outputPath, options);
|
|
236
|
+
if (options.follow) {
|
|
237
|
+
await handleSequenceCapture(outputPath, options);
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
assertFilePath(outputPath);
|
|
241
|
+
const captureOptions = { ...options, format: resolveImageFormat(outputPath, options.format) };
|
|
242
|
+
if (hasElementTarget(captureOptions)) {
|
|
243
|
+
await handleElementScreenshot(outputPath, captureOptions);
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
await handlePageScreenshot(outputPath, captureOptions);
|
|
247
|
+
}
|
|
248
|
+
//# sourceMappingURL=screenshot.js.map
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities for rendering semantic (a11y + DOM context) output.
|
|
3
|
+
*
|
|
4
|
+
* Used by both `dom query` and `dom get` to format accessibility nodes with
|
|
5
|
+
* their surrounding DOM context and to fall back gracefully when only one
|
|
6
|
+
* of the two data sources is available.
|
|
7
|
+
*/
|
|
8
|
+
import { type DomContext } from './helpers/index.js';
|
|
9
|
+
import type { A11yNode } from '../../types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Accessibility node paired with its surrounding DOM context for display.
|
|
12
|
+
*/
|
|
13
|
+
export interface SemanticNodeWithContext {
|
|
14
|
+
node: A11yNode;
|
|
15
|
+
domContext: DomContext | null;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Format a semantic node together with DOM context for human-readable output.
|
|
19
|
+
*
|
|
20
|
+
* @param data - Accessibility node and optional DOM context
|
|
21
|
+
* @returns One-line formatted string
|
|
22
|
+
*/
|
|
23
|
+
export declare function formatSemanticNodeWithContext(data: SemanticNodeWithContext): string;
|
|
24
|
+
/**
|
|
25
|
+
* Resolve an a11y node, falling back to a DOM-synthesized one when only
|
|
26
|
+
* DOM context is available. Returns null when neither source can produce one.
|
|
27
|
+
*
|
|
28
|
+
* @param a11yNode - Accessibility node, if any
|
|
29
|
+
* @param domContext - DOM context, if any
|
|
30
|
+
* @param nodeId - CDP nodeId for synthesis
|
|
31
|
+
*/
|
|
32
|
+
export declare function resolveNodeWithFallback(a11yNode: A11yNode | null, domContext: DomContext | null, nodeId: number | undefined): A11yNode | null;
|
|
33
|
+
/**
|
|
34
|
+
* Look up a single element by selector to produce its nodeId and DOM context.
|
|
35
|
+
*
|
|
36
|
+
* Used by `dom get` (semantic mode) when the accessibility tree has no node
|
|
37
|
+
* for the selector — the selector-based DOM context allows us to synthesize
|
|
38
|
+
* one.
|
|
39
|
+
*/
|
|
40
|
+
export declare function queryDomContextBySelector(selector: string): Promise<{
|
|
41
|
+
nodeId: number | undefined;
|
|
42
|
+
domContext: DomContext | null;
|
|
43
|
+
}>;
|
|
44
|
+
//# sourceMappingURL=semanticUtils.d.ts.map
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities for rendering semantic (a11y + DOM context) output.
|
|
3
|
+
*
|
|
4
|
+
* Used by both `dom query` and `dom get` to format accessibility nodes with
|
|
5
|
+
* their surrounding DOM context and to fall back gracefully when only one
|
|
6
|
+
* of the two data sources is available.
|
|
7
|
+
*/
|
|
8
|
+
import { getDomContext, resolveBackendNodeIds, } from './helpers/index.js';
|
|
9
|
+
import { synthesizeA11yNode } from '../../telemetry/roleInference.js';
|
|
10
|
+
function capitalize(str) {
|
|
11
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
12
|
+
}
|
|
13
|
+
function buildRoleText(node) {
|
|
14
|
+
if (node.role.toLowerCase() === 'heading' && node.properties?.['level'] !== undefined) {
|
|
15
|
+
const level = node.properties['level'];
|
|
16
|
+
const levelNum = typeof level === 'number' ? level : Number(level);
|
|
17
|
+
if (!isNaN(levelNum)) {
|
|
18
|
+
return `[Heading L${levelNum}]`;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return `[${capitalize(node.role)}]`;
|
|
22
|
+
}
|
|
23
|
+
function buildContextText(node, domContext) {
|
|
24
|
+
if (node.name) {
|
|
25
|
+
return ` "${node.name}"`;
|
|
26
|
+
}
|
|
27
|
+
if (domContext) {
|
|
28
|
+
const tagPart = `<${domContext.tag}`;
|
|
29
|
+
const classPart = domContext.classes && domContext.classes.length > 0
|
|
30
|
+
? `.${domContext.classes.slice(0, 3).join('.')}`
|
|
31
|
+
: '';
|
|
32
|
+
const previewPart = domContext.preview ? ` "${domContext.preview}"` : '';
|
|
33
|
+
return ` ${tagPart}${classPart}>${previewPart}`;
|
|
34
|
+
}
|
|
35
|
+
return '';
|
|
36
|
+
}
|
|
37
|
+
function buildPropertiesText(node) {
|
|
38
|
+
const props = [];
|
|
39
|
+
if (node.value !== undefined && node.value !== '')
|
|
40
|
+
props.push(`value: "${node.value}"`);
|
|
41
|
+
const checked = node.properties?.['checked'];
|
|
42
|
+
if (checked !== undefined) {
|
|
43
|
+
props.push(checked === 'mixed' ? 'partly checked' : checked ? 'checked' : 'unchecked');
|
|
44
|
+
}
|
|
45
|
+
const expanded = node.properties?.['expanded'];
|
|
46
|
+
if (expanded !== undefined)
|
|
47
|
+
props.push(expanded ? 'expanded' : 'collapsed');
|
|
48
|
+
if (node.focusable)
|
|
49
|
+
props.push('focusable');
|
|
50
|
+
if (node.focused)
|
|
51
|
+
props.push('focused');
|
|
52
|
+
if (node.disabled)
|
|
53
|
+
props.push('disabled');
|
|
54
|
+
if (node.required)
|
|
55
|
+
props.push('required');
|
|
56
|
+
return props.length > 0 ? ` (${props.join(', ')})` : '';
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Format a semantic node together with DOM context for human-readable output.
|
|
60
|
+
*
|
|
61
|
+
* @param data - Accessibility node and optional DOM context
|
|
62
|
+
* @returns One-line formatted string
|
|
63
|
+
*/
|
|
64
|
+
export function formatSemanticNodeWithContext(data) {
|
|
65
|
+
const { node, domContext } = data;
|
|
66
|
+
const roleText = buildRoleText(node);
|
|
67
|
+
const contextText = buildContextText(node, domContext);
|
|
68
|
+
const propsText = buildPropertiesText(node);
|
|
69
|
+
const inferredText = node.inferred ? ' (inferred from DOM)' : '';
|
|
70
|
+
return `${roleText}${contextText}${propsText}${inferredText}`;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Resolve an a11y node, falling back to a DOM-synthesized one when only
|
|
74
|
+
* DOM context is available. Returns null when neither source can produce one.
|
|
75
|
+
*
|
|
76
|
+
* @param a11yNode - Accessibility node, if any
|
|
77
|
+
* @param domContext - DOM context, if any
|
|
78
|
+
* @param nodeId - CDP nodeId for synthesis
|
|
79
|
+
*/
|
|
80
|
+
export function resolveNodeWithFallback(a11yNode, domContext, nodeId) {
|
|
81
|
+
if (a11yNode)
|
|
82
|
+
return a11yNode;
|
|
83
|
+
if (domContext && nodeId)
|
|
84
|
+
return synthesizeA11yNode(domContext, nodeId);
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Look up a single element by selector to produce its nodeId and DOM context.
|
|
89
|
+
*
|
|
90
|
+
* Used by `dom get` (semantic mode) when the accessibility tree has no node
|
|
91
|
+
* for the selector — the selector-based DOM context allows us to synthesize
|
|
92
|
+
* one.
|
|
93
|
+
*/
|
|
94
|
+
export async function queryDomContextBySelector(selector) {
|
|
95
|
+
const [backendNodeId] = await resolveBackendNodeIds([selector]);
|
|
96
|
+
if (backendNodeId === undefined) {
|
|
97
|
+
return { nodeId: undefined, domContext: null };
|
|
98
|
+
}
|
|
99
|
+
const domContext = await getDomContext({ backendNodeId });
|
|
100
|
+
return { nodeId: backendNodeId, domContext };
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=semanticUtils.js.map
|
|
@@ -30,9 +30,11 @@ export interface OptionMetadata {
|
|
|
30
30
|
flags: string;
|
|
31
31
|
/** Option description */
|
|
32
32
|
description: string;
|
|
33
|
-
/** Whether option
|
|
33
|
+
/** Whether the option must be given (rare; most options are optional) */
|
|
34
34
|
required: boolean;
|
|
35
|
-
/** Whether option
|
|
35
|
+
/** Whether the option takes a value (`--port <number>`) */
|
|
36
|
+
takesValue: boolean;
|
|
37
|
+
/** Whether the option's value may be omitted (`--flag [value]`) */
|
|
36
38
|
optional: boolean;
|
|
37
39
|
/** Default value if any */
|
|
38
40
|
defaultValue?: unknown;
|
|
@@ -2,12 +2,10 @@
|
|
|
2
2
|
* Machine-readable help generation using Commander.js introspection API.
|
|
3
3
|
*/
|
|
4
4
|
import { getAllDomainSummaries } from '../cdp/schema.js';
|
|
5
|
-
import { getOptionBehavior } from '
|
|
6
|
-
import {
|
|
7
|
-
import { readPid } from '../session/pid.js';
|
|
5
|
+
import { getOptionBehavior } from './optionBehaviors.js';
|
|
6
|
+
import { readLiveDaemonPid } from '../session/cleanup/staleSession.js';
|
|
8
7
|
import { getAllDecisionTrees } from '../utils/decisionTrees.js';
|
|
9
8
|
import { EXIT_CODE_REGISTRY } from '../utils/exitCodes.js';
|
|
10
|
-
import { isProcessAlive } from '../utils/process.js';
|
|
11
9
|
import { getAllTaskMappings } from '../utils/taskMappings.js';
|
|
12
10
|
/**
|
|
13
11
|
* Converts a Commander Option to OptionMetadata.
|
|
@@ -24,7 +22,8 @@ function convertOption(option, commandName) {
|
|
|
24
22
|
const metadata = {
|
|
25
23
|
flags: option.flags,
|
|
26
24
|
description: option.description,
|
|
27
|
-
required: option.
|
|
25
|
+
required: option.mandatory,
|
|
26
|
+
takesValue: option.required || option.optional,
|
|
28
27
|
optional: option.optional,
|
|
29
28
|
};
|
|
30
29
|
if (option.defaultValue !== undefined) {
|
|
@@ -86,42 +85,23 @@ function convertCommand(command) {
|
|
|
86
85
|
subcommands: command.commands.map(convertCommand),
|
|
87
86
|
};
|
|
88
87
|
}
|
|
89
|
-
/**
|
|
90
|
-
* Checks if a session is currently active.
|
|
91
|
-
*
|
|
92
|
-
* @returns True if session is active, false otherwise
|
|
93
|
-
*/
|
|
94
|
-
function isSessionActive() {
|
|
95
|
-
const sessionPid = readPid();
|
|
96
|
-
if (sessionPid === null) {
|
|
97
|
-
return false;
|
|
98
|
-
}
|
|
99
|
-
return isProcessAlive(sessionPid);
|
|
100
|
-
}
|
|
101
88
|
/**
|
|
102
89
|
* Generates runtime state information.
|
|
103
90
|
*
|
|
104
|
-
*
|
|
105
|
-
* command
|
|
91
|
+
* The daemon hosts exactly one session, so a live daemon means an active
|
|
92
|
+
* session. Uses daemon.pid verified by command line to keep help generation
|
|
93
|
+
* synchronous; nothing is signalled based on this.
|
|
106
94
|
*
|
|
107
95
|
* @returns Runtime state object
|
|
108
96
|
*/
|
|
109
97
|
function generateRuntimeState() {
|
|
110
|
-
const
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
availableCommands.push('bdg <url>', 'cleanup', '--help', '--version');
|
|
115
|
-
}
|
|
116
|
-
else if (daemonRunning && sessionActive) {
|
|
117
|
-
availableCommands.push('peek', 'tail', 'details', 'dom', 'network', 'console', 'cdp', 'status', 'stop');
|
|
118
|
-
}
|
|
119
|
-
else if (daemonRunning && !sessionActive) {
|
|
120
|
-
availableCommands.push('bdg <url>', 'cleanup', 'status');
|
|
121
|
-
}
|
|
98
|
+
const sessionActive = readLiveDaemonPid() !== null;
|
|
99
|
+
const availableCommands = sessionActive
|
|
100
|
+
? ['peek', 'tail', 'details', 'dom', 'network', 'console', 'cdp', 'status', 'stop']
|
|
101
|
+
: ['bdg <url>', 'cleanup', '--help', '--version'];
|
|
122
102
|
return {
|
|
123
103
|
sessionActive,
|
|
124
|
-
daemonRunning,
|
|
104
|
+
daemonRunning: sessionActive,
|
|
125
105
|
availableCommands,
|
|
126
106
|
};
|
|
127
107
|
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bdg help <command...>` topics and Commander usage-error hints.
|
|
3
|
+
*/
|
|
4
|
+
import type { Command } from 'commander';
|
|
5
|
+
/**
|
|
6
|
+
* The command path of `bdg help <path...>`: the words before the first option.
|
|
7
|
+
*
|
|
8
|
+
* @param args - Arguments after `help`
|
|
9
|
+
* @returns Command words, e.g. ['dom', 'query']
|
|
10
|
+
*/
|
|
11
|
+
export declare function helpTopicPath(args: string[]): string[];
|
|
12
|
+
/**
|
|
13
|
+
* Reject `bdg help <topic>` for a command that does not exist (instead of
|
|
14
|
+
* showing the general help and exiting 0). Stops at a command without
|
|
15
|
+
* subcommands (further words are its arguments) and at `help` itself.
|
|
16
|
+
*
|
|
17
|
+
* @param program - Root command with all commands registered
|
|
18
|
+
* @param topic - Command path after `help`
|
|
19
|
+
* @throws CommandError (81) naming the unknown command
|
|
20
|
+
*/
|
|
21
|
+
export declare function assertKnownHelpTopic(program: Command, topic: string[]): void;
|
|
22
|
+
/**
|
|
23
|
+
* Split Commander's error text into the message and a "did you mean" suggestion.
|
|
24
|
+
*
|
|
25
|
+
* @param text - Commander error message
|
|
26
|
+
* @returns Message without the hint, and the hint as a suggestion
|
|
27
|
+
*/
|
|
28
|
+
export declare function splitCommanderHint(text: string): {
|
|
29
|
+
message: string;
|
|
30
|
+
suggestion?: string;
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=helpTopic.d.ts.map
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `bdg help <command...>` topics and Commander usage-error hints.
|
|
3
|
+
*/
|
|
4
|
+
import { CommandError } from '../errors/index.js';
|
|
5
|
+
import { unknownHelpTopicError } from '../errors/messages.js';
|
|
6
|
+
import { EXIT_CODES } from '../utils/exitCodes.js';
|
|
7
|
+
import { findSimilar } from '../utils/suggestions.js';
|
|
8
|
+
/** Commander's typo hint on its own line, e.g. "(Did you mean query?)" */
|
|
9
|
+
const COMMANDER_HINT = /\n?\(Did you mean (.+)\?\)\s*$/;
|
|
10
|
+
/**
|
|
11
|
+
* The command path of `bdg help <path...>`: the words before the first option.
|
|
12
|
+
*
|
|
13
|
+
* @param args - Arguments after `help`
|
|
14
|
+
* @returns Command words, e.g. ['dom', 'query']
|
|
15
|
+
*/
|
|
16
|
+
export function helpTopicPath(args) {
|
|
17
|
+
const firstOption = args.findIndex((arg) => arg.startsWith('-'));
|
|
18
|
+
return firstOption === -1 ? args : args.slice(0, firstOption);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Reject `bdg help <topic>` for a command that does not exist (instead of
|
|
22
|
+
* showing the general help and exiting 0). Stops at a command without
|
|
23
|
+
* subcommands (further words are its arguments) and at `help` itself.
|
|
24
|
+
*
|
|
25
|
+
* @param program - Root command with all commands registered
|
|
26
|
+
* @param topic - Command path after `help`
|
|
27
|
+
* @throws CommandError (81) naming the unknown command
|
|
28
|
+
*/
|
|
29
|
+
export function assertKnownHelpTopic(program, topic) {
|
|
30
|
+
let command = program;
|
|
31
|
+
const path = [];
|
|
32
|
+
for (const word of topic) {
|
|
33
|
+
if (command.commands.length === 0 || word === 'help')
|
|
34
|
+
return;
|
|
35
|
+
const sub = command.commands.find((c) => c.name() === word || c.aliases().includes(word));
|
|
36
|
+
if (!sub) {
|
|
37
|
+
const [closest] = findSimilar(word, command.commands.map((c) => c.name()));
|
|
38
|
+
const err = unknownHelpTopicError([...path, word].join(' '), closest && [...path, closest].join(' '));
|
|
39
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
40
|
+
}
|
|
41
|
+
path.push(sub.name());
|
|
42
|
+
command = sub;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Split Commander's error text into the message and a "did you mean" suggestion.
|
|
47
|
+
*
|
|
48
|
+
* @param text - Commander error message
|
|
49
|
+
* @returns Message without the hint, and the hint as a suggestion
|
|
50
|
+
*/
|
|
51
|
+
export function splitCommanderHint(text) {
|
|
52
|
+
const message = text.replace(/^error:\s*/i, '');
|
|
53
|
+
const hint = COMMANDER_HINT.exec(message);
|
|
54
|
+
if (!hint)
|
|
55
|
+
return { message };
|
|
56
|
+
return { message: message.slice(0, hint.index).trim(), suggestion: `Did you mean: ${hint[1]}?` };
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=helpTopic.js.map
|