browser-debugger-cli 0.7.2 → 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,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bind interaction scripts to an exact DOM node.
|
|
3
|
+
*
|
|
4
|
+
* Indices from `bdg dom query` / `bdg dom form` refer to one specific node
|
|
5
|
+
* (by backend node id). Re-running the selector at action time would hit a
|
|
6
|
+
* different element after the DOM changed, so the node itself is handed to
|
|
7
|
+
* the page scripts: it is resolved through CDP and stored on `window`, and the
|
|
8
|
+
* scripts' element lookup ({@link FIND_ELEMENTS_JS}) returns it for
|
|
9
|
+
* {@link BOUND_TARGET_SELECTOR}.
|
|
10
|
+
*/
|
|
11
|
+
import { CommandError } from '../../errors/index.js';
|
|
12
|
+
import { staleNodeError } from '../../errors/messages.js';
|
|
13
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
14
|
+
import { parseSelectorFilters } from '../../utils/selectorFilters.js';
|
|
15
|
+
/** Selector placeholder that makes page scripts use the bound node. */
|
|
16
|
+
export const BOUND_TARGET_SELECTOR = '__bdg_bound_target__';
|
|
17
|
+
/**
|
|
18
|
+
* Page-side test of one text or visibility filter ({@link SelectorFilter}).
|
|
19
|
+
* Visible means a non-empty box and `visibility: visible`, as in Playwright
|
|
20
|
+
* (`opacity: 0` still counts as visible). Text is the rendered text (`innerText`, `textContent` for elements without
|
|
21
|
+
* it) with whitespace collapsed; filter texts arrive normalized (`has-text`
|
|
22
|
+
* lowercased).
|
|
23
|
+
*/
|
|
24
|
+
const FILTER_MATCHES_JS = `(el, filter) => {
|
|
25
|
+
if (filter.kind === 'visible') {
|
|
26
|
+
const rect = el.getBoundingClientRect();
|
|
27
|
+
return rect.width > 0 && rect.height > 0 && el.ownerDocument.defaultView.getComputedStyle(el).visibility === 'visible';
|
|
28
|
+
}
|
|
29
|
+
const text = (typeof el.innerText === 'string' ? el.innerText : el.textContent || '').replace(/\\s+/g, ' ').trim();
|
|
30
|
+
return filter.kind === 'text-is' ? text === filter.text : text.toLowerCase().includes(filter.text);
|
|
31
|
+
}`;
|
|
32
|
+
/**
|
|
33
|
+
* Page-side selector search that also reaches into open shadow roots and
|
|
34
|
+
* same-origin iframes (recursively), like a user sees the page.
|
|
35
|
+
*
|
|
36
|
+
* Takes the selector and, when it has text or visibility filters, its parts
|
|
37
|
+
* from {@link parseSelectorFilters}: their CSS runs as one selector list and
|
|
38
|
+
* a match is kept when it passes the filters of a part it matches.
|
|
39
|
+
* Matches of the document come first, then those of each shadow root and
|
|
40
|
+
* frame in document order. Cross-origin iframes are separate processes and
|
|
41
|
+
* cannot be searched. Throws a `SyntaxError` for an invalid selector.
|
|
42
|
+
*/
|
|
43
|
+
export const DEEP_QUERY_JS = `function (selector, parts) {
|
|
44
|
+
const css = parts ? parts.map((part) => part.css).join(', ') : selector;
|
|
45
|
+
const found = [];
|
|
46
|
+
const visit = (root) => {
|
|
47
|
+
for (const match of root.querySelectorAll(css)) found.push(match);
|
|
48
|
+
for (const el of root.querySelectorAll('*')) {
|
|
49
|
+
if (el.shadowRoot) visit(el.shadowRoot);
|
|
50
|
+
if (el.tagName === 'IFRAME' || el.tagName === 'FRAME') {
|
|
51
|
+
let frameDocument = null;
|
|
52
|
+
try { frameDocument = el.contentDocument; } catch (e) { frameDocument = null; }
|
|
53
|
+
if (frameDocument) visit(frameDocument);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
visit(document);
|
|
58
|
+
if (!parts) return found;
|
|
59
|
+
const passes = ${FILTER_MATCHES_JS};
|
|
60
|
+
return found.filter((el) => parts.some((part) => el.matches(part.css) && part.filters.every((filter) => passes(el, filter))));
|
|
61
|
+
}`;
|
|
62
|
+
/**
|
|
63
|
+
* Page-side element lookup shared by the interaction scripts.
|
|
64
|
+
*
|
|
65
|
+
* Returns the bound node (if still in the page) for the placeholder selector,
|
|
66
|
+
* otherwise all matches of the selector ({@link DEEP_QUERY_JS}).
|
|
67
|
+
*/
|
|
68
|
+
export const FIND_ELEMENTS_JS = `function (selector, parts) {
|
|
69
|
+
if (selector === '${BOUND_TARGET_SELECTOR}') {
|
|
70
|
+
const el = window.__bdgTarget;
|
|
71
|
+
return el && el.isConnected ? [el] : [];
|
|
72
|
+
}
|
|
73
|
+
return (${DEEP_QUERY_JS})(selector, parts);
|
|
74
|
+
}`;
|
|
75
|
+
/**
|
|
76
|
+
* Arguments for {@link DEEP_QUERY_JS} / {@link FIND_ELEMENTS_JS} and the page
|
|
77
|
+
* scripts built on them: the selector as a JS string literal and its parts
|
|
78
|
+
* (`null` for plain CSS, which runs unchanged).
|
|
79
|
+
*
|
|
80
|
+
* @param selector - Selector as the user gave it (or the bound-node placeholder)
|
|
81
|
+
* @returns JS source of the two arguments, e.g. `"li:visible", [{...}]`
|
|
82
|
+
* @throws CommandError (81) for a misplaced or malformed filter
|
|
83
|
+
*/
|
|
84
|
+
export function selectorArgsJS(selector) {
|
|
85
|
+
return `${JSON.stringify(selector)}, ${JSON.stringify(parseSelectorFilters(selector))}`;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Store the node for the page scripts. It runs in the node's own frame, while
|
|
89
|
+
* the scripts run in the top page, so the node goes on the top window (always
|
|
90
|
+
* reachable for the same-origin frames bdg can target).
|
|
91
|
+
*/
|
|
92
|
+
const BIND_FUNCTION = `function () {
|
|
93
|
+
let host = window;
|
|
94
|
+
try { host = window.top; host.__bdgTarget = this; } catch (e) { host = window; host.__bdgTarget = this; }
|
|
95
|
+
return this.isConnected;
|
|
96
|
+
}`;
|
|
97
|
+
/**
|
|
98
|
+
* Make the node with `backendNodeId` the target of the next page script.
|
|
99
|
+
*
|
|
100
|
+
* @param cdp - CDP connection
|
|
101
|
+
* @param backendNodeId - Backend node id from the query cache
|
|
102
|
+
* @throws CommandError (exit 87) when the node no longer exists in the page
|
|
103
|
+
*/
|
|
104
|
+
export async function bindTargetNode(cdp, backendNodeId) {
|
|
105
|
+
const err = staleNodeError();
|
|
106
|
+
const stale = new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.STALE_CACHE);
|
|
107
|
+
let objectId;
|
|
108
|
+
try {
|
|
109
|
+
const resolved = (await cdp.send('DOM.resolveNode', { backendNodeId }));
|
|
110
|
+
objectId = resolved.object?.objectId;
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
throw stale;
|
|
114
|
+
}
|
|
115
|
+
if (!objectId)
|
|
116
|
+
throw stale;
|
|
117
|
+
const bound = (await cdp.send('Runtime.callFunctionOn', {
|
|
118
|
+
objectId,
|
|
119
|
+
functionDeclaration: BIND_FUNCTION,
|
|
120
|
+
returnByValue: true,
|
|
121
|
+
}));
|
|
122
|
+
if (bound.result?.value !== true)
|
|
123
|
+
throw stale;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Resolve what a page script should target for an interaction request.
|
|
127
|
+
*
|
|
128
|
+
* @param cdp - CDP connection
|
|
129
|
+
* @param params - Request with a selector (and optional index) or a backend node id
|
|
130
|
+
* @returns Selector/index for the page script
|
|
131
|
+
*/
|
|
132
|
+
export async function resolveScriptTarget(cdp, params) {
|
|
133
|
+
if (params.backendNodeId === undefined) {
|
|
134
|
+
return {
|
|
135
|
+
selector: params.selector ?? '',
|
|
136
|
+
...(params.index !== undefined && { index: params.index }),
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
await bindTargetNode(cdp, params.backendNodeId);
|
|
140
|
+
return { selector: BOUND_TARGET_SELECTOR };
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Report the user's selector instead of the internal placeholder.
|
|
144
|
+
*
|
|
145
|
+
* @param result - Script result
|
|
146
|
+
* @param selector - Selector the user gave (or the cached query's selector)
|
|
147
|
+
* @returns Result with the placeholder replaced
|
|
148
|
+
*/
|
|
149
|
+
export function withUserSelector(result, selector) {
|
|
150
|
+
if (result.selector !== BOUND_TARGET_SELECTOR)
|
|
151
|
+
return result;
|
|
152
|
+
return { ...result, ...(selector !== undefined && { selector }) };
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=targetNode.js.map
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Page navigation for `bdg page navigate|reload|back|forward`.
|
|
3
|
+
*/
|
|
4
|
+
import type { CDPConnection } from '../../connection/cdp.js';
|
|
5
|
+
import type { PageAction, PageNavigationResult } from '../../ipc/protocol/commands.js';
|
|
6
|
+
import type { CDPSender } from '../../telemetry/objectExpander.js';
|
|
7
|
+
/**
|
|
8
|
+
* Navigate the session's page and wait until it has loaded.
|
|
9
|
+
*
|
|
10
|
+
* With `wait: false` the command is sent and the call returns at once (the
|
|
11
|
+
* navigation may still be waiting for the server). Otherwise the server gets
|
|
12
|
+
* {@link PAGE_READY_TIMEOUT_MS} to answer, then the new document is waited on
|
|
13
|
+
* to settle; its HTTP status is reported, with a warning for 4xx/5xx, for a
|
|
14
|
+
* URL that is a download, or a page still loading.
|
|
15
|
+
*
|
|
16
|
+
* @param cdp - CDP connection
|
|
17
|
+
* @param action - Navigate to a URL, reload, or go back/forward in history
|
|
18
|
+
* @param options - `url` for navigate, `wait: false` to return without waiting
|
|
19
|
+
* @returns Where the page is now
|
|
20
|
+
* @throws CommandError (80) for an unreachable URL, (81) without a history entry
|
|
21
|
+
*/
|
|
22
|
+
export declare function navigatePage(cdp: CDPConnection, action: PageAction, options?: {
|
|
23
|
+
url?: string;
|
|
24
|
+
wait?: boolean;
|
|
25
|
+
}): Promise<PageNavigationResult>;
|
|
26
|
+
/**
|
|
27
|
+
* The URL of a navigation still waiting for the server, if any: the page
|
|
28
|
+
* target already shows it while the history's current entry does not.
|
|
29
|
+
*
|
|
30
|
+
* @param cdp - CDP connection
|
|
31
|
+
* @returns The pending URL, or undefined when the page is not navigating
|
|
32
|
+
*/
|
|
33
|
+
export declare function pendingNavigationUrl(cdp: CDPSender): Promise<string | undefined>;
|
|
34
|
+
//# sourceMappingURL=navigation.d.ts.map
|
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Page navigation for `bdg page navigate|reload|back|forward`.
|
|
3
|
+
*/
|
|
4
|
+
import { waitForPageReady } from '../../connection/pageReadiness.js';
|
|
5
|
+
import { UNREACHABLE_ERRORS } from '../../daemon/session/cdpSetup.js';
|
|
6
|
+
import { CommandError } from '../../errors/index.js';
|
|
7
|
+
import { navigationFailedError, noHistoryEntryError } from '../../errors/messages.js';
|
|
8
|
+
import { createLogger } from '../../ui/logging/index.js';
|
|
9
|
+
import { httpErrorWarning, notAPageWarning, stillLoadingWarning } from '../../ui/messages/commands.js';
|
|
10
|
+
import { delay } from '../../utils/async.js';
|
|
11
|
+
import { getErrorMessage } from '../../utils/errors.js';
|
|
12
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
13
|
+
import { normalizeUrl } from '../../utils/url.js';
|
|
14
|
+
const log = createLogger('session');
|
|
15
|
+
/** How long to wait in all for the page to load and settle after navigating */
|
|
16
|
+
const PAGE_READY_TIMEOUT_MS = 15_000;
|
|
17
|
+
/**
|
|
18
|
+
* Navigate the session's page and wait until it has loaded.
|
|
19
|
+
*
|
|
20
|
+
* With `wait: false` the command is sent and the call returns at once (the
|
|
21
|
+
* navigation may still be waiting for the server). Otherwise the server gets
|
|
22
|
+
* {@link PAGE_READY_TIMEOUT_MS} to answer, then the new document is waited on
|
|
23
|
+
* to settle; its HTTP status is reported, with a warning for 4xx/5xx, for a
|
|
24
|
+
* URL that is a download, or a page still loading.
|
|
25
|
+
*
|
|
26
|
+
* @param cdp - CDP connection
|
|
27
|
+
* @param action - Navigate to a URL, reload, or go back/forward in history
|
|
28
|
+
* @param options - `url` for navigate, `wait: false` to return without waiting
|
|
29
|
+
* @returns Where the page is now
|
|
30
|
+
* @throws CommandError (80) for an unreachable URL, (81) without a history entry
|
|
31
|
+
*/
|
|
32
|
+
export async function navigatePage(cdp, action, options = {}) {
|
|
33
|
+
const url = action === 'navigate' ? normalizeUrl(options.url ?? '') : undefined;
|
|
34
|
+
if (options.wait === false)
|
|
35
|
+
return startWithoutWaiting(cdp, action, url);
|
|
36
|
+
const mainFrameId = (await pageTarget(cdp)).targetId;
|
|
37
|
+
const navigated = nextNavigation(cdp, mainFrameId);
|
|
38
|
+
const document = documentResponse(cdp, mainFrameId);
|
|
39
|
+
const deadline = Date.now() + PAGE_READY_TIMEOUT_MS;
|
|
40
|
+
try {
|
|
41
|
+
const sent = startAction(cdp, action, url);
|
|
42
|
+
sent.catch(() => undefined);
|
|
43
|
+
const started = await Promise.race([sent, delay(PAGE_READY_TIMEOUT_MS)]);
|
|
44
|
+
if (started === undefined)
|
|
45
|
+
return await stillLoading(cdp, action);
|
|
46
|
+
if (started === 'not-a-page') {
|
|
47
|
+
return { action, ...(await currentLocation(cdp)), warning: notAPageWarning() };
|
|
48
|
+
}
|
|
49
|
+
const how = await Promise.race([navigated.done, delay(Math.max(0, deadline - Date.now()))]);
|
|
50
|
+
if (how === 'loaded') {
|
|
51
|
+
await waitForPageReady(cdp, { maxWaitMs: Math.max(0, deadline - Date.now()) });
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
finally {
|
|
55
|
+
navigated.stop();
|
|
56
|
+
document.stop();
|
|
57
|
+
}
|
|
58
|
+
return withStatus({ action, ...(await currentLocation(cdp)) }, document.response());
|
|
59
|
+
}
|
|
60
|
+
/** How long `--no-wait` waits for an action to be refused (no history entry, unreachable URL) */
|
|
61
|
+
const NO_WAIT_GRACE_MS = 1_000;
|
|
62
|
+
/**
|
|
63
|
+
* Start an action without waiting for the page: errors that come at once
|
|
64
|
+
* are still reported, a server that has not answered is not waited for.
|
|
65
|
+
*
|
|
66
|
+
* @param cdp - CDP connection
|
|
67
|
+
* @param action - What to do
|
|
68
|
+
* @param url - Normalized URL for navigate
|
|
69
|
+
* @returns The URL being loaded
|
|
70
|
+
* @throws CommandError (80) for an unreachable URL, (81) without a history entry
|
|
71
|
+
*/
|
|
72
|
+
async function startWithoutWaiting(cdp, action, url) {
|
|
73
|
+
const sent = startAction(cdp, action, url);
|
|
74
|
+
sent.catch((error) => log.debug(`Navigation not started: ${getErrorMessage(error)}`));
|
|
75
|
+
const started = await Promise.race([sent, delay(NO_WAIT_GRACE_MS)]);
|
|
76
|
+
const result = { action, url: url ?? (await pageTarget(cdp)).url, title: '' };
|
|
77
|
+
return started === 'not-a-page' ? { ...result, warning: notAPageWarning() } : result;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Send the command of an action.
|
|
81
|
+
*
|
|
82
|
+
* @param cdp - CDP connection
|
|
83
|
+
* @param action - What to do
|
|
84
|
+
* @param url - Normalized URL for navigate
|
|
85
|
+
* @returns 'not-a-page' when the URL loaded no document (a download), else 'started'
|
|
86
|
+
* @throws CommandError (80) when the URL cannot be reached, (81) without a history entry
|
|
87
|
+
*/
|
|
88
|
+
async function startAction(cdp, action, url) {
|
|
89
|
+
if (action === 'navigate')
|
|
90
|
+
return navigateTo(cdp, url ?? '');
|
|
91
|
+
if (action === 'reload')
|
|
92
|
+
await cdp.send('Page.reload', {});
|
|
93
|
+
else
|
|
94
|
+
await goThroughHistory(cdp, action === 'back' ? -1 : 1);
|
|
95
|
+
return 'started';
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* The page target as the browser sees it. Unlike the page's own state, this
|
|
99
|
+
* answers while a navigation waits for the server (Chrome holds commands for
|
|
100
|
+
* the page until the new document commits). A page target's id is its main
|
|
101
|
+
* frame's id; its URL is the one being navigated to.
|
|
102
|
+
*
|
|
103
|
+
* @param cdp - CDP connection
|
|
104
|
+
* @returns Target id and URL
|
|
105
|
+
*/
|
|
106
|
+
async function pageTarget(cdp) {
|
|
107
|
+
const { targetInfo } = (await cdp.send('Target.getTargetInfo', {}));
|
|
108
|
+
return targetInfo;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* The URL of a navigation still waiting for the server, if any: the page
|
|
112
|
+
* target already shows it while the history's current entry does not.
|
|
113
|
+
*
|
|
114
|
+
* @param cdp - CDP connection
|
|
115
|
+
* @returns The pending URL, or undefined when the page is not navigating
|
|
116
|
+
*/
|
|
117
|
+
export async function pendingNavigationUrl(cdp) {
|
|
118
|
+
const [target, history] = await Promise.all([
|
|
119
|
+
pageTarget(cdp),
|
|
120
|
+
cdp.send('Page.getNavigationHistory', {}),
|
|
121
|
+
]);
|
|
122
|
+
const committedUrl = history.entries[history.currentIndex]?.url;
|
|
123
|
+
return target.url !== committedUrl ? target.url : undefined;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* The page's URL and title.
|
|
127
|
+
*
|
|
128
|
+
* @param cdp - CDP connection
|
|
129
|
+
* @returns URL and title
|
|
130
|
+
*/
|
|
131
|
+
async function currentLocation(cdp) {
|
|
132
|
+
const location = (await cdp.send('Runtime.evaluate', {
|
|
133
|
+
expression: '({ url: location.href, title: document.title })',
|
|
134
|
+
returnByValue: true,
|
|
135
|
+
}));
|
|
136
|
+
return { url: location.result?.value?.url ?? '', title: location.result?.value?.title ?? '' };
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Result for a server that has not answered within the time limit.
|
|
140
|
+
*
|
|
141
|
+
* @param cdp - CDP connection
|
|
142
|
+
* @param action - What was done
|
|
143
|
+
* @returns The URL being loaded, with a warning
|
|
144
|
+
*/
|
|
145
|
+
async function stillLoading(cdp, action) {
|
|
146
|
+
return {
|
|
147
|
+
action,
|
|
148
|
+
url: (await pageTarget(cdp)).url,
|
|
149
|
+
title: '',
|
|
150
|
+
warning: stillLoadingWarning(PAGE_READY_TIMEOUT_MS),
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Add the document's HTTP status (and a warning for an error status).
|
|
155
|
+
*
|
|
156
|
+
* @param result - Navigation result
|
|
157
|
+
* @param response - The main document's response, if one arrived
|
|
158
|
+
* @returns Result with status
|
|
159
|
+
*/
|
|
160
|
+
function withStatus(result, response) {
|
|
161
|
+
if (!response)
|
|
162
|
+
return result;
|
|
163
|
+
const url = result.url.startsWith('chrome-error://') ? response.url : result.url;
|
|
164
|
+
return {
|
|
165
|
+
...result,
|
|
166
|
+
url,
|
|
167
|
+
status: response.status,
|
|
168
|
+
...(response.status >= 400 && { warning: httpErrorWarning(response.status) }),
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Watch for the response of the main frame's next document.
|
|
173
|
+
*
|
|
174
|
+
* @param cdp - CDP connection
|
|
175
|
+
* @param mainFrameId - Main frame id
|
|
176
|
+
* @returns The response seen so far, and a function to stop listening
|
|
177
|
+
*/
|
|
178
|
+
function documentResponse(cdp, mainFrameId) {
|
|
179
|
+
let seen;
|
|
180
|
+
const stop = cdp.on('Network.responseReceived', (params) => {
|
|
181
|
+
if (params.type === 'Document' && params.frameId === mainFrameId) {
|
|
182
|
+
seen = { status: params.response.status, url: params.response.url };
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
return { response: () => seen, stop };
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Resolve once the page has loaded a new document, moved within its
|
|
189
|
+
* document (hash or history changes), or was restored from the back/forward
|
|
190
|
+
* cache (those fire no load event). Only a newly loaded document is then
|
|
191
|
+
* waited on to settle: a restored or same-document page already is. Without this, the
|
|
192
|
+
* readiness check would see the old page, still complete, and return at once.
|
|
193
|
+
*
|
|
194
|
+
* @param cdp - CDP connection
|
|
195
|
+
* @param mainFrameId - The page's main frame (iframes moving within their document don't count)
|
|
196
|
+
* @returns The wait, and a function to stop listening
|
|
197
|
+
*/
|
|
198
|
+
function nextNavigation(cdp, mainFrameId) {
|
|
199
|
+
const unsubscribes = [];
|
|
200
|
+
const done = new Promise((resolve) => {
|
|
201
|
+
unsubscribes.push(cdp.on('Page.loadEventFired', () => resolve('loaded')));
|
|
202
|
+
unsubscribes.push(cdp.on('Page.navigatedWithinDocument', (params) => {
|
|
203
|
+
if (params.frameId === mainFrameId)
|
|
204
|
+
resolve('same-document');
|
|
205
|
+
}));
|
|
206
|
+
unsubscribes.push(cdp.on('Page.frameNavigated', (params) => {
|
|
207
|
+
if (!params.frame.parentId && params.type === 'BackForwardCacheRestore') {
|
|
208
|
+
resolve('restored');
|
|
209
|
+
}
|
|
210
|
+
}));
|
|
211
|
+
});
|
|
212
|
+
return { done, stop: () => unsubscribes.forEach((unsubscribe) => unsubscribe()) };
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Load a URL in the page.
|
|
216
|
+
*
|
|
217
|
+
* @param cdp - CDP connection
|
|
218
|
+
* @param url - Normalized URL
|
|
219
|
+
* @returns 'not-a-page' when no document was loaded (a download), else 'started'
|
|
220
|
+
* @throws CommandError (80) when the URL cannot be reached
|
|
221
|
+
*/
|
|
222
|
+
async function navigateTo(cdp, url) {
|
|
223
|
+
const navigation = (await cdp.send('Page.navigate', { url }));
|
|
224
|
+
if (navigation.errorText === 'net::ERR_ABORTED' && !navigation.loaderId)
|
|
225
|
+
return 'not-a-page';
|
|
226
|
+
if (!navigation.errorText || !UNREACHABLE_ERRORS.test(navigation.errorText))
|
|
227
|
+
return 'started';
|
|
228
|
+
const err = navigationFailedError(url, navigation.errorText);
|
|
229
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_URL);
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Go back or forward one entry in the page's history.
|
|
233
|
+
*
|
|
234
|
+
* @param cdp - CDP connection
|
|
235
|
+
* @param step - -1 for back, 1 for forward
|
|
236
|
+
* @throws CommandError (81) when there is no such entry
|
|
237
|
+
*/
|
|
238
|
+
async function goThroughHistory(cdp, step) {
|
|
239
|
+
const history = (await cdp.send('Page.getNavigationHistory', {}));
|
|
240
|
+
const index = history.currentIndex + step;
|
|
241
|
+
const entry = history.entries[index];
|
|
242
|
+
const blankStart = index === 0 && entry?.url === 'about:blank';
|
|
243
|
+
if (!entry || blankStart) {
|
|
244
|
+
const err = noHistoryEntryError(step < 0 ? 'back' : 'forward');
|
|
245
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
246
|
+
}
|
|
247
|
+
await cdp.send('Page.navigateToHistoryEntry', { entryId: entry.id });
|
|
248
|
+
}
|
|
249
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -1,22 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Query cache manager for DOM element index-based access.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* The cache enables index-based element access patterns like
|
|
10
|
-
* "bdg dom get 0" after running "bdg dom query .selector".
|
|
4
|
+
* Stores the last `bdg dom query` / `bdg dom form` result so later commands
|
|
5
|
+
* can address its elements by index ("bdg dom get 0"). Each cached node holds
|
|
6
|
+
* its backend node id, which identifies that exact element for as long as it
|
|
7
|
+
* stays in the page; whether it still does is checked when the index is used,
|
|
8
|
+
* not here.
|
|
11
9
|
*
|
|
12
10
|
* @example
|
|
13
11
|
* ```typescript
|
|
14
12
|
* const manager = QueryCacheManager.getInstance();
|
|
15
|
-
*
|
|
16
|
-
* // Store query results
|
|
17
13
|
* await manager.set(queryResult);
|
|
18
14
|
*
|
|
19
|
-
* // Validate and retrieve (throws if stale)
|
|
20
15
|
* const validation = await manager.validate();
|
|
21
16
|
* if (validation.valid) {
|
|
22
17
|
* const cache = validation.cache;
|
|
@@ -25,28 +20,27 @@
|
|
|
25
20
|
*/
|
|
26
21
|
import type { DomQueryResult } from '../types.js';
|
|
27
22
|
/**
|
|
28
|
-
*
|
|
23
|
+
* Selector recorded for `dom form` results (fields carry their own selectors).
|
|
24
|
+
*/
|
|
25
|
+
export declare const FORM_DISCOVERY_CACHE_SELECTOR = "form:auto-discovered";
|
|
26
|
+
/**
|
|
27
|
+
* Result of reading the cache.
|
|
29
28
|
*/
|
|
30
29
|
export interface QueryCacheValidation {
|
|
31
|
-
/** Whether
|
|
30
|
+
/** Whether cached indices can be used */
|
|
32
31
|
valid: boolean;
|
|
33
|
-
/**
|
|
32
|
+
/** Cached result, if readable */
|
|
34
33
|
cache: DomQueryResult | null;
|
|
35
|
-
/**
|
|
34
|
+
/** Why the cache can't be used */
|
|
36
35
|
error?: string;
|
|
37
|
-
/**
|
|
36
|
+
/** How to fix it */
|
|
38
37
|
suggestion?: string;
|
|
39
38
|
}
|
|
40
39
|
/**
|
|
41
|
-
* Singleton manager for
|
|
42
|
-
*
|
|
43
|
-
* Centralizes all cache operations with navigation-aware staleness detection.
|
|
44
|
-
* Uses file-based persistence for cross-process access.
|
|
40
|
+
* Singleton manager for the on-disk query cache.
|
|
45
41
|
*/
|
|
46
42
|
export declare class QueryCacheManager {
|
|
47
43
|
private static instance;
|
|
48
|
-
/** Cached navigation ID with timestamp for TTL-based invalidation. */
|
|
49
|
-
private cachedNavigationId;
|
|
50
44
|
/**
|
|
51
45
|
* Get the singleton instance.
|
|
52
46
|
*
|
|
@@ -58,83 +52,32 @@ export declare class QueryCacheManager {
|
|
|
58
52
|
*/
|
|
59
53
|
static resetInstance(): void;
|
|
60
54
|
/**
|
|
61
|
-
*
|
|
55
|
+
* Path of the cache file in the session directory.
|
|
62
56
|
*
|
|
63
|
-
* @returns Absolute
|
|
57
|
+
* @returns Absolute cache file path
|
|
64
58
|
*/
|
|
65
59
|
private getCachePath;
|
|
66
60
|
/**
|
|
67
|
-
* Store query
|
|
68
|
-
*
|
|
69
|
-
* Writes results to ~/.bdg/query-cache.json for cross-process access.
|
|
61
|
+
* Store a query result.
|
|
70
62
|
*
|
|
71
|
-
* @param result -
|
|
63
|
+
* @param result - Query result whose nodes carry backend node ids
|
|
72
64
|
*/
|
|
73
65
|
set(result: DomQueryResult): Promise<void>;
|
|
74
66
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
77
|
-
* Returns null if cache is stale or doesn't exist.
|
|
78
|
-
* Use getRaw() for unchecked access.
|
|
79
|
-
*
|
|
80
|
-
* @returns Cached query result or null if invalid/missing
|
|
81
|
-
*/
|
|
82
|
-
get(): Promise<DomQueryResult | null>;
|
|
83
|
-
/**
|
|
84
|
-
* Get raw cache without validation.
|
|
85
|
-
*
|
|
86
|
-
* Reads from ~/.bdg/query-cache.json if it exists.
|
|
87
|
-
* Does not check navigation staleness.
|
|
88
|
-
*
|
|
89
|
-
* @returns Cached query result or null if no cache exists
|
|
90
|
-
*/
|
|
91
|
-
getRaw(): Promise<DomQueryResult | null>;
|
|
92
|
-
/**
|
|
93
|
-
* Validate cache against current navigation state.
|
|
94
|
-
*
|
|
95
|
-
* Checks if the cached query results are still valid by comparing
|
|
96
|
-
* the stored navigationId with the current one from the daemon.
|
|
67
|
+
* Read the cache and check that it can be used.
|
|
97
68
|
*
|
|
98
|
-
* @returns Validation result with
|
|
99
|
-
*
|
|
100
|
-
* @example
|
|
101
|
-
* ```typescript
|
|
102
|
-
* const validation = await manager.validate();
|
|
103
|
-
* if (!validation.valid) {
|
|
104
|
-
* throw new CommandError(validation.error, { suggestion: validation.suggestion });
|
|
105
|
-
* }
|
|
106
|
-
* const cache = validation.cache;
|
|
107
|
-
* ```
|
|
69
|
+
* @returns Validation result with the cached query when usable
|
|
108
70
|
*/
|
|
109
71
|
validate(): Promise<QueryCacheValidation>;
|
|
110
72
|
/**
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
* Removes ~/.bdg/query-cache.json.
|
|
114
|
-
* Called when starting a new query or when the session ends.
|
|
73
|
+
* Remove the cache file.
|
|
115
74
|
*/
|
|
116
75
|
clear(): Promise<void>;
|
|
117
76
|
/**
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
* @returns True if cache file exists
|
|
121
|
-
*/
|
|
122
|
-
exists(): boolean;
|
|
123
|
-
/**
|
|
124
|
-
* Get current navigation ID from the daemon.
|
|
125
|
-
*
|
|
126
|
-
* Caches the result for 500ms to avoid redundant IPC calls within a single
|
|
127
|
-
* command execution while ensuring freshness for subsequent commands.
|
|
128
|
-
*
|
|
129
|
-
* @returns Current navigation ID or null if unavailable
|
|
130
|
-
*/
|
|
131
|
-
getCurrentNavigationId(): Promise<number | null>;
|
|
132
|
-
/**
|
|
133
|
-
* Invalidate cached navigation ID.
|
|
77
|
+
* Read the raw cache file.
|
|
134
78
|
*
|
|
135
|
-
*
|
|
136
|
-
* Useful after navigation events.
|
|
79
|
+
* @returns Parsed cache content, or null if missing/unreadable
|
|
137
80
|
*/
|
|
138
|
-
|
|
81
|
+
private read;
|
|
139
82
|
}
|
|
140
83
|
//# sourceMappingURL=QueryCacheManager.d.ts.map
|