browser-debugger-cli 0.7.2 → 0.9.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 +17 -6
- package/dist/cdp/protocol.d.ts +1 -1
- package/dist/cdp/protocol.js +1 -1
- package/dist/cdp/schema.d.ts +14 -1
- package/dist/cdp/schema.js +61 -7
- package/dist/commands/cdp.js +76 -23
- package/dist/commands/cleanup.d.ts +11 -0
- package/dist/commands/cleanup.js +167 -55
- package/dist/commands/console.d.ts +38 -2
- package/dist/commands/console.js +147 -62
- package/dist/commands/details.js +15 -4
- package/dist/commands/dom/DomElementResolver.d.ts +34 -72
- package/dist/commands/dom/DomElementResolver.js +93 -166
- package/dist/commands/dom/a11y.d.ts +10 -0
- package/dist/commands/dom/a11y.js +75 -34
- package/dist/commands/dom/eval.d.ts +15 -0
- package/dist/commands/dom/eval.js +68 -0
- package/dist/commands/dom/form.js +109 -199
- package/dist/commands/dom/formInteraction.d.ts +6 -1
- package/dist/commands/dom/formInteraction.js +319 -362
- package/dist/commands/dom/formSummary.d.ts +49 -0
- package/dist/commands/dom/formSummary.js +180 -0
- package/dist/commands/dom/frames.d.ts +13 -0
- package/dist/commands/dom/frames.js +43 -0
- package/dist/commands/dom/get.d.ts +21 -0
- package/dist/commands/dom/get.js +151 -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 +105 -0
- package/dist/commands/dom/helpers/query.js +604 -0
- package/dist/commands/dom/helpers/runElementCommand.d.ts +64 -0
- package/dist/commands/dom/helpers/runElementCommand.js +130 -0
- package/dist/commands/dom/helpers/screenshot.d.ts +33 -0
- package/dist/commands/dom/helpers/screenshot.js +489 -0
- package/dist/commands/dom/index.d.ts +17 -3
- package/dist/commands/dom/index.js +61 -517
- package/dist/commands/dom/layout.d.ts +14 -0
- package/dist/commands/dom/layout.js +54 -0
- package/dist/commands/dom/listeners.d.ts +20 -0
- package/dist/commands/dom/listeners.js +64 -0
- package/dist/commands/dom/query.d.ts +14 -0
- package/dist/commands/dom/query.js +35 -0
- package/dist/commands/dom/screenshot.d.ts +31 -0
- package/dist/commands/dom/screenshot.js +272 -0
- package/dist/commands/dom/semanticUtils.d.ts +37 -0
- package/dist/commands/dom/semanticUtils.js +98 -0
- package/dist/commands/dom/wait.d.ts +13 -0
- package/dist/commands/dom/wait.js +83 -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 +97 -71
- 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 +148 -36
- package/dist/commands/page.d.ts +12 -0
- package/dist/commands/page.js +148 -0
- package/dist/commands/peek.js +64 -57
- package/dist/commands/sessions.d.ts +8 -0
- package/dist/commands/sessions.js +19 -0
- 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 +21 -4
- package/dist/commands/shared/followMode.js +34 -12
- package/dist/commands/shared/handleValidationError.d.ts +14 -0
- package/dist/commands/shared/handleValidationError.js +48 -0
- package/dist/commands/shared/optionTypes.d.ts +80 -25
- 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 +235 -37
- package/dist/commands/shared/validation.d.ts +43 -0
- package/dist/commands/shared/validation.js +102 -22
- package/dist/commands/start.d.ts +91 -1
- package/dist/commands/start.js +328 -40
- package/dist/commands/status.js +76 -17
- package/dist/commands/stop.js +21 -30
- package/dist/commands/tail.js +22 -44
- package/dist/commands/types.d.ts +2 -0
- package/dist/commands.js +4 -0
- package/dist/connection/cdp.d.ts +12 -6
- package/dist/connection/cdp.js +59 -16
- package/dist/connection/chromeIdentity.d.ts +65 -0
- package/dist/connection/chromeIdentity.js +143 -0
- 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/profilePreferences.d.ts +47 -0
- package/dist/connection/launcher/profilePreferences.js +151 -0
- package/dist/connection/launcher.d.ts +22 -1
- package/dist/connection/launcher.js +89 -44
- package/dist/connection/pageReadiness.d.ts +5 -6
- package/dist/connection/pageReadiness.js +63 -120
- package/dist/connection/portReservation.d.ts +20 -0
- package/dist/connection/portReservation.js +52 -2
- package/dist/connection/startupExit.d.ts +45 -0
- package/dist/connection/startupExit.js +116 -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 +27 -24
- package/dist/constants.js +37 -27
- package/dist/daemon/SessionController.d.ts +125 -0
- package/dist/daemon/SessionController.js +488 -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 +14 -21
- package/dist/daemon/launcher.js +94 -102
- 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 +130 -30
- package/dist/daemon/session/Session.d.ts +150 -0
- package/dist/daemon/session/Session.js +337 -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 +47 -0
- package/dist/daemon/session/chromeConnection.js +215 -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 +435 -0
- package/dist/daemon/session/interactions.d.ts +53 -0
- package/dist/daemon/session/interactions.js +71 -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/session/triggeredRequests.d.ts +67 -0
- package/dist/daemon/session/triggeredRequests.js +157 -0
- package/dist/daemon/session/types.d.ts +19 -0
- package/dist/daemon.d.ts +3 -4
- package/dist/daemon.js +19149 -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 +908 -0
- package/dist/errors/messages.js +1653 -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 +18828 -168
- package/dist/ipc/client.d.ts +56 -9
- package/dist/ipc/client.js +115 -19
- package/dist/ipc/index.d.ts +2 -2
- package/dist/ipc/index.js +2 -2
- package/dist/ipc/protocol/commands.d.ts +305 -59
- package/dist/ipc/protocol/commands.js +29 -21
- package/dist/ipc/protocol/domTypes.d.ts +487 -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 +28 -23
- package/dist/ipc/session/queries.d.ts +26 -5
- package/dist/ipc/session/types.d.ts +6 -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 +8 -1
- package/dist/ipc/transport/index.js +8 -3
- 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/actionEffects.d.ts +106 -0
- package/dist/runtime/dom/actionEffects.js +256 -0
- package/dist/runtime/dom/actionEffectsScripts.d.ts +52 -0
- package/dist/runtime/dom/actionEffectsScripts.js +234 -0
- package/dist/runtime/dom/elementGeometry.d.ts +170 -0
- package/dist/runtime/dom/elementGeometry.js +553 -0
- package/dist/runtime/dom/elementInfo.d.ts +77 -0
- package/dist/runtime/dom/elementInfo.js +191 -0
- package/dist/runtime/dom/evalHelpers.d.ts +121 -0
- package/dist/runtime/dom/evalHelpers.js +516 -0
- package/dist/runtime/dom/eventListeners.d.ts +24 -0
- package/dist/runtime/dom/eventListeners.js +379 -0
- package/dist/runtime/dom/formDiscovery.d.ts +26 -0
- package/dist/{commands → runtime}/dom/formDiscovery.js +163 -24
- package/dist/runtime/dom/formFillHelpers/fill.d.ts +39 -0
- package/dist/runtime/dom/formFillHelpers/fill.js +414 -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 +206 -0
- package/dist/runtime/dom/formFillHelpers/scroll.d.ts +27 -0
- package/dist/runtime/dom/formFillHelpers/scroll.js +230 -0
- package/dist/runtime/dom/formFillHelpers/shared.d.ts +60 -0
- package/dist/runtime/dom/formFillHelpers/shared.js +124 -0
- package/dist/runtime/dom/formFillHelpers/stability.d.ts +28 -0
- package/dist/runtime/dom/formFillHelpers/stability.js +71 -0
- package/dist/runtime/dom/formSubmitHelpers.d.ts +32 -0
- package/dist/runtime/dom/formSubmitHelpers.js +326 -0
- package/dist/runtime/dom/formTypes.d.ts +8 -0
- package/dist/runtime/dom/frameLayout.d.ts +60 -0
- package/dist/runtime/dom/frameLayout.js +140 -0
- package/dist/runtime/dom/frameOrigin.d.ts +50 -0
- package/dist/runtime/dom/frameOrigin.js +62 -0
- package/dist/runtime/dom/frameScopedConnection.d.ts +92 -0
- package/dist/runtime/dom/frameScopedConnection.js +252 -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 +61 -0
- package/dist/runtime/dom/frames.js +444 -0
- package/dist/runtime/dom/keyMapping.d.ts +103 -0
- package/dist/runtime/dom/keyMapping.js +232 -0
- package/dist/runtime/dom/layout.d.ts +67 -0
- package/dist/runtime/dom/layout.js +333 -0
- package/dist/runtime/dom/listenerPageScripts.d.ts +66 -0
- package/dist/runtime/dom/listenerPageScripts.js +279 -0
- package/dist/runtime/dom/listenerSummary.d.ts +193 -0
- package/dist/runtime/dom/listenerSummary.js +472 -0
- package/dist/runtime/dom/pageActivity.d.ts +41 -0
- package/dist/runtime/dom/pageActivity.js +123 -0
- package/dist/runtime/dom/reactEventHelpers.d.ts +117 -0
- package/dist/runtime/dom/reactEventHelpers.js +641 -0
- package/dist/runtime/dom/targetNode.d.ts +131 -0
- package/dist/runtime/dom/targetNode.js +370 -0
- package/dist/runtime/dom/wait.d.ts +25 -0
- package/dist/runtime/dom/wait.js +199 -0
- package/dist/runtime/dom/waitCondition.d.ts +71 -0
- package/dist/runtime/dom/waitCondition.js +75 -0
- package/dist/runtime/page/emulation.d.ts +51 -0
- package/dist/runtime/page/emulation.js +80 -0
- package/dist/runtime/page/loadingState.d.ts +36 -0
- package/dist/runtime/page/loadingState.js +86 -0
- package/dist/runtime/page/navigation.d.ts +78 -0
- package/dist/runtime/page/navigation.js +285 -0
- package/dist/session/QueryCacheManager.d.ts +36 -83
- package/dist/session/QueryCacheManager.js +63 -133
- package/dist/session/chrome.d.ts +21 -16
- package/dist/session/chrome.js +28 -44
- package/dist/session/chromeOwners.d.ts +34 -0
- package/dist/session/chromeOwners.js +51 -0
- package/dist/session/cleanup/staleSession.d.ts +59 -0
- package/dist/session/cleanup/staleSession.js +135 -0
- package/dist/session/cleanup/userCommands.d.ts +36 -0
- package/dist/session/cleanup/userCommands.js +93 -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 +7 -1
- package/dist/session/metadata.js +2 -1
- package/dist/session/paths.d.ts +79 -7
- package/dist/session/paths.js +113 -9
- package/dist/session/pid.d.ts +9 -38
- package/dist/session/pid.js +14 -64
- package/dist/session/port.d.ts +31 -12
- package/dist/session/port.js +56 -59
- package/dist/session/portClaims.d.ts +66 -0
- package/dist/session/portClaims.js +284 -0
- package/dist/session/sessionList.d.ts +58 -0
- package/dist/session/sessionList.js +199 -0
- package/dist/session/sessionName.d.ts +46 -0
- package/dist/session/sessionName.js +97 -0
- package/dist/telemetry/a11y.d.ts +31 -20
- package/dist/telemetry/a11y.js +304 -107
- 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/telemetry/requestKinds.d.ts +32 -0
- package/dist/telemetry/requestKinds.js +61 -0
- package/dist/telemetry/requestState.d.ts +31 -0
- package/dist/telemetry/requestState.js +38 -0
- package/dist/types.d.ts +143 -46
- 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 +75 -9
- package/dist/ui/formatters/console/chronological.d.ts +22 -0
- package/dist/ui/formatters/console/chronological.js +71 -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 +52 -0
- package/dist/ui/formatters/console/shared.d.ts +148 -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 +184 -24
- package/dist/ui/formatters/dom.d.ts +42 -9
- package/dist/ui/formatters/dom.js +99 -34
- package/dist/ui/formatters/form.js +62 -72
- package/dist/ui/formatters/helpFormatters.js +5 -4
- package/dist/ui/formatters/layout.d.ts +31 -0
- package/dist/ui/formatters/layout.js +53 -0
- package/dist/ui/formatters/listeners.d.ts +25 -0
- package/dist/ui/formatters/listeners.js +160 -0
- package/dist/ui/formatters/networkHeaders.d.ts +3 -3
- package/dist/ui/formatters/networkHeaders.js +20 -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 +55 -73
- package/dist/ui/formatters/requestStatus.d.ts +18 -0
- package/dist/ui/formatters/requestStatus.js +27 -0
- package/dist/ui/formatters/semantic.d.ts +1 -1
- package/dist/ui/formatters/semantic.js +1 -1
- package/dist/ui/formatters/sessions.d.ts +12 -0
- package/dist/ui/formatters/sessions.js +40 -0
- package/dist/ui/formatters/status.d.ts +44 -7
- package/dist/ui/formatters/status.js +89 -28
- package/dist/ui/formatters/triggeredRequests.d.ts +36 -0
- package/dist/ui/formatters/triggeredRequests.js +65 -0
- package/dist/ui/formatting.d.ts +45 -0
- package/dist/ui/formatting.js +115 -24
- package/dist/ui/logging/logger.d.ts +1 -1
- package/dist/ui/messages/chrome.d.ts +41 -97
- package/dist/ui/messages/chrome.js +110 -132
- package/dist/ui/messages/commands.d.ts +495 -3
- package/dist/ui/messages/commands.js +796 -6
- package/dist/ui/messages/consoleMessages.d.ts +7 -3
- package/dist/ui/messages/consoleMessages.js +13 -4
- package/dist/ui/messages/hints.d.ts +9 -15
- package/dist/ui/messages/hints.js +18 -16
- package/dist/ui/messages/networkMessages.d.ts +0 -6
- package/dist/ui/messages/networkMessages.js +0 -8
- package/dist/ui/messages/preview.js +5 -4
- package/dist/ui/messages/session.d.ts +37 -21
- package/dist/ui/messages/session.js +59 -26
- package/dist/ui/messages/sessionCommand.d.ts +43 -0
- package/dist/ui/messages/sessionCommand.js +52 -0
- package/dist/ui/messages/validation.d.ts +15 -26
- package/dist/ui/messages/validation.js +33 -38
- package/dist/utils/async.d.ts +8 -0
- package/dist/utils/async.js +19 -0
- 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 +56 -4
- package/dist/utils/http.js +78 -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 +73 -0
- package/dist/utils/selectorFilters.js +438 -0
- package/dist/utils/shellDetection.d.ts +8 -2
- package/dist/utils/shellDetection.js +120 -33
- package/dist/utils/suggestions.d.ts +26 -0
- package/dist/utils/suggestions.js +74 -1
- package/dist/utils/taskMappings.js +17 -2
- package/dist/utils/typeGuards.js +2 -2
- package/dist/utils/url.d.ts +23 -5
- package/dist/utils/url.js +115 -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 +0 -15
- 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 +0 -58
- package/dist/ui/formatters/sessionFormatters.d.ts.map +0 -1
- package/dist/ui/formatters/sessionFormatters.js +0 -118
- 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,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared helper for DOM element commands (fill, click, submit, pressKey).
|
|
3
|
+
*
|
|
4
|
+
* Captures the common flow: resolve selector/index → call IPC → normalize errors.
|
|
5
|
+
* Keeps individual command handlers focused on option wiring and output formatting.
|
|
6
|
+
*/
|
|
7
|
+
import { DomElementResolver } from '../DomElementResolver.js';
|
|
8
|
+
import { noMatchContext } from './query.js';
|
|
9
|
+
import { otherIndexSourceNote, staleNodeError, unreachableElementsNote, withLoadingHint, } from '../../../errors/messages.js';
|
|
10
|
+
import { joinLines } from '../../../ui/formatting.js';
|
|
11
|
+
import { EXIT_CODES } from '../../../utils/exitCodes.js';
|
|
12
|
+
/**
|
|
13
|
+
* Resolve an element target, invoke the IPC call, and normalize failures
|
|
14
|
+
* into the structured `CommandRunner` result shape. A numeric index names the
|
|
15
|
+
* list it refers to (`indexSource` in the data, and in errors).
|
|
16
|
+
*/
|
|
17
|
+
export async function runElementCommand(options) {
|
|
18
|
+
const { selectorOrIndex, index, command, buildRequest, call } = options;
|
|
19
|
+
const target = await DomElementResolver.getInstance().resolve(selectorOrIndex, index, command);
|
|
20
|
+
if (!target.success) {
|
|
21
|
+
return {
|
|
22
|
+
success: false,
|
|
23
|
+
error: target.error ?? 'Failed to resolve element target',
|
|
24
|
+
exitCode: target.exitCode ?? EXIT_CODES.INVALID_ARGUMENTS,
|
|
25
|
+
...(target.suggestion && { errorContext: { suggestion: target.suggestion } }),
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
const request = buildRequest({
|
|
29
|
+
selector: target.selector,
|
|
30
|
+
...(target.index !== undefined && { index: target.index }),
|
|
31
|
+
...(target.backendNodeId !== undefined && { backendNodeId: target.backendNodeId }),
|
|
32
|
+
});
|
|
33
|
+
const response = await call(request);
|
|
34
|
+
const failure = response.status === 'error' || !response.data
|
|
35
|
+
? errorResponseFailure(response, options)
|
|
36
|
+
: response.data.success
|
|
37
|
+
? undefined
|
|
38
|
+
: failedResultFailure(response.data, options);
|
|
39
|
+
if (failure && target.source) {
|
|
40
|
+
return indexFailure(failure, target.source, target.preview, response.data);
|
|
41
|
+
}
|
|
42
|
+
if (failure)
|
|
43
|
+
return withNotFoundContext(failure, target.selector, response.status !== 'error');
|
|
44
|
+
const { success: _success, ...data } = response.data;
|
|
45
|
+
return { success: true, data: { ...data, ...(target.source && { indexSource: target.source }) } };
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* A failure on a cached index, told in terms of the index: a stale element
|
|
49
|
+
* (87) names the index and the command that refreshes it, and an element a
|
|
50
|
+
* form command cannot act on, from the results of another command, gets a
|
|
51
|
+
* note on which list the index refers to.
|
|
52
|
+
*
|
|
53
|
+
* @param failure - Failed command result
|
|
54
|
+
* @param source - The index and the list it refers to
|
|
55
|
+
* @param preview - What the cached element was when listed
|
|
56
|
+
* @param result - Action result, when the daemon answered
|
|
57
|
+
* @returns The failure in terms of the index
|
|
58
|
+
*/
|
|
59
|
+
function indexFailure(failure, source, preview, result) {
|
|
60
|
+
if (failure.exitCode === EXIT_CODES.STALE_CACHE) {
|
|
61
|
+
const err = staleNodeError(source.index, source);
|
|
62
|
+
return {
|
|
63
|
+
success: false,
|
|
64
|
+
error: err.message,
|
|
65
|
+
exitCode: EXIT_CODES.STALE_CACHE,
|
|
66
|
+
errorContext: { suggestion: err.suggestion },
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
if (!result?.unsuitableElement || source.command === 'dom form')
|
|
70
|
+
return failure;
|
|
71
|
+
const note = otherIndexSourceNote(source, preview);
|
|
72
|
+
return {
|
|
73
|
+
...failure,
|
|
74
|
+
errorContext: { suggestion: joinLines(failure.errorContext?.suggestion, note) },
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Failure for an error response of the daemon.
|
|
79
|
+
*
|
|
80
|
+
* @param response - Error response
|
|
81
|
+
* @param options - Command options (selector or index, action)
|
|
82
|
+
* @returns Failed command result
|
|
83
|
+
*/
|
|
84
|
+
function errorResponseFailure(response, options) {
|
|
85
|
+
return {
|
|
86
|
+
success: false,
|
|
87
|
+
error: response.error ?? `Failed to ${options.action}`,
|
|
88
|
+
exitCode: response.exitCode ?? EXIT_CODES.INVALID_ARGUMENTS,
|
|
89
|
+
...(response.suggestion && { errorContext: { suggestion: response.suggestion } }),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Failure for an action whose page script reported failure.
|
|
94
|
+
*
|
|
95
|
+
* @param result - Action result
|
|
96
|
+
* @param options - Command options (action, fallback suggestion)
|
|
97
|
+
* @returns Failed command result
|
|
98
|
+
*/
|
|
99
|
+
function failedResultFailure(result, options) {
|
|
100
|
+
const exitCode = result.exitCode ??
|
|
101
|
+
(result.error?.includes('not found')
|
|
102
|
+
? EXIT_CODES.RESOURCE_NOT_FOUND
|
|
103
|
+
: EXIT_CODES.INVALID_ARGUMENTS);
|
|
104
|
+
return {
|
|
105
|
+
success: false,
|
|
106
|
+
error: result.error ?? `Failed to ${options.action}`,
|
|
107
|
+
exitCode,
|
|
108
|
+
errorContext: { suggestion: result.suggestion ?? options.failureSuggestion },
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Add what the page says to a "not found" failure (one page evaluation, on
|
|
113
|
+
* this failure path only, {@link noMatchContext}): similar ids or classes,
|
|
114
|
+
* the places selectors do not search (for a page script that found nothing)
|
|
115
|
+
* and the still-loading hint while the page loads.
|
|
116
|
+
*
|
|
117
|
+
* @param failure - Failed command result
|
|
118
|
+
* @param selector - Selector that was looked for (the cached query's for an index)
|
|
119
|
+
* @param searched - The page script searched the page (the daemon did not fail first)
|
|
120
|
+
* @returns The failure, with the context in its suggestion
|
|
121
|
+
*/
|
|
122
|
+
async function withNotFoundContext(failure, selector, searched) {
|
|
123
|
+
if (failure.exitCode !== EXIT_CODES.RESOURCE_NOT_FOUND)
|
|
124
|
+
return failure;
|
|
125
|
+
const context = await noMatchContext(selector);
|
|
126
|
+
const note = searched ? unreachableElementsNote(selector, context.unsearched) : '';
|
|
127
|
+
const suggestion = withLoadingHint(joinLines(context.similar, failure.errorContext?.suggestion, note ? note : undefined), context.readyState, selector);
|
|
128
|
+
return suggestion ? { ...failure, errorContext: { suggestion } } : failure;
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=runElementCommand.js.map
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CDP-relay helpers for screenshot capture.
|
|
3
|
+
*
|
|
4
|
+
* Covers page, element, and element-bounds operations plus the scroll-into-
|
|
5
|
+
* view primitives used by page screenshots with `--scroll`.
|
|
6
|
+
*/
|
|
7
|
+
import type { ScreenshotResult, ScreenshotOptions, ElementBounds, NodeRef } from '../../../types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Get the bounding box (border box, so padding and border are included) of an
|
|
10
|
+
* element via CDP DOM.getBoxModel.
|
|
11
|
+
*
|
|
12
|
+
* @param ref - Node reference
|
|
13
|
+
* @returns Element bounds in CSS pixels
|
|
14
|
+
*/
|
|
15
|
+
export declare function getElementBounds(ref: NodeRef): Promise<ElementBounds>;
|
|
16
|
+
/**
|
|
17
|
+
* Capture a screenshot of the page. Auto-resizes oversized pages by default
|
|
18
|
+
* to keep Claude Vision token cost bounded; falls back to viewport capture
|
|
19
|
+
* when the page is taller than the tall-page threshold.
|
|
20
|
+
*/
|
|
21
|
+
export declare function capturePageScreenshot(outputPath: string, options?: ScreenshotOptions): Promise<ScreenshotResult>;
|
|
22
|
+
/**
|
|
23
|
+
* Capture a screenshot of a single element: its border box, grown to include
|
|
24
|
+
* content overflowing it ({@link captureArea}). The box model is relative to
|
|
25
|
+
* the viewport and the capture clip to the page, so the page scroll is added
|
|
26
|
+
* (the reported bounds are page coordinates, like `dom layout`'s).
|
|
27
|
+
*/
|
|
28
|
+
export declare function captureElementScreenshot(outputPath: string, ref: NodeRef, options?: {
|
|
29
|
+
format?: 'png' | 'jpeg';
|
|
30
|
+
quality?: number;
|
|
31
|
+
noResize?: boolean;
|
|
32
|
+
}): Promise<ScreenshotResult>;
|
|
33
|
+
//# sourceMappingURL=screenshot.d.ts.map
|
|
@@ -0,0 +1,489 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CDP-relay helpers for screenshot capture.
|
|
3
|
+
*
|
|
4
|
+
* Covers page, element, and element-bounds operations plus the scroll-into-
|
|
5
|
+
* view primitives used by page screenshots with `--scroll`.
|
|
6
|
+
*/
|
|
7
|
+
import { calculateImageTokens, calculateResizeScale, isTallPage, shouldResize, } from '../screenshotResize.js';
|
|
8
|
+
import { writeOutputFile } from '../../shared/outputFile.js';
|
|
9
|
+
import { CDPConnectionError } from '../../../connection/errors.js';
|
|
10
|
+
import { CommandError } from '../../../errors/index.js';
|
|
11
|
+
import { noNodesFoundError, elementNotVisibleError, elementZeroDimensionsError, } from '../../../errors/messages.js';
|
|
12
|
+
import { callCDP } from '../../../ipc/client.js';
|
|
13
|
+
import { DEEP_QUERY_JS, selectorArgsJS } from '../../../runtime/dom/targetNode.js';
|
|
14
|
+
import { viewportOverride } from '../../../runtime/page/emulation.js';
|
|
15
|
+
import { readSessionMetadata } from '../../../session/metadata.js';
|
|
16
|
+
import { createLogger } from '../../../ui/logging/index.js';
|
|
17
|
+
import { EXIT_CODES } from '../../../utils/exitCodes.js';
|
|
18
|
+
const log = createLogger('dom');
|
|
19
|
+
const POST_SCROLL_NETWORK_IDLE_MS = 150;
|
|
20
|
+
const POST_SCROLL_DOM_STABLE_MS = 200;
|
|
21
|
+
const POST_SCROLL_MAX_WAIT_MS = 2000;
|
|
22
|
+
const STABILITY_CHECK_INTERVAL_MS = 50;
|
|
23
|
+
/**
|
|
24
|
+
* Wait for the page to settle after a programmatic scroll (lazy-load idle +
|
|
25
|
+
* DOM mutation idle). Uses shorter thresholds than full page load.
|
|
26
|
+
*/
|
|
27
|
+
async function waitForPostScrollStability() {
|
|
28
|
+
const deadline = Date.now() + POST_SCROLL_MAX_WAIT_MS;
|
|
29
|
+
await callCDP('Runtime.evaluate', {
|
|
30
|
+
expression: `
|
|
31
|
+
(() => {
|
|
32
|
+
window.__bdg_scrollStability = {
|
|
33
|
+
lastNetworkActivity: Date.now(),
|
|
34
|
+
lastDomMutation: Date.now(),
|
|
35
|
+
activeRequests: 0
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const state = window.__bdg_scrollStability;
|
|
39
|
+
|
|
40
|
+
if (window.PerformanceObserver) {
|
|
41
|
+
const perfObserver = new PerformanceObserver((list) => {
|
|
42
|
+
for (const entry of list.getEntries()) {
|
|
43
|
+
if (entry.entryType === 'resource') {
|
|
44
|
+
state.lastNetworkActivity = Date.now();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
try {
|
|
49
|
+
perfObserver.observe({ entryTypes: ['resource'] });
|
|
50
|
+
state.perfObserver = perfObserver;
|
|
51
|
+
} catch (e) {}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const mutationObserver = new MutationObserver(() => {
|
|
55
|
+
state.lastDomMutation = Date.now();
|
|
56
|
+
});
|
|
57
|
+
mutationObserver.observe(document.body || document.documentElement, {
|
|
58
|
+
childList: true,
|
|
59
|
+
subtree: true,
|
|
60
|
+
attributes: true
|
|
61
|
+
});
|
|
62
|
+
state.mutationObserver = mutationObserver;
|
|
63
|
+
})()
|
|
64
|
+
`,
|
|
65
|
+
returnByValue: true,
|
|
66
|
+
});
|
|
67
|
+
try {
|
|
68
|
+
while (Date.now() < deadline) {
|
|
69
|
+
const checkResult = await callCDP('Runtime.evaluate', {
|
|
70
|
+
expression: `
|
|
71
|
+
(() => {
|
|
72
|
+
const state = window.__bdg_scrollStability;
|
|
73
|
+
if (!state) return { networkIdle: 999, domIdle: 999 };
|
|
74
|
+
return {
|
|
75
|
+
networkIdle: Date.now() - state.lastNetworkActivity,
|
|
76
|
+
domIdle: Date.now() - state.lastDomMutation
|
|
77
|
+
};
|
|
78
|
+
})()
|
|
79
|
+
`,
|
|
80
|
+
returnByValue: true,
|
|
81
|
+
});
|
|
82
|
+
const value = checkResult.data?.result?.result?.value;
|
|
83
|
+
const networkIdle = value?.networkIdle ?? 0;
|
|
84
|
+
const domIdle = value?.domIdle ?? 0;
|
|
85
|
+
if (networkIdle >= POST_SCROLL_NETWORK_IDLE_MS && domIdle >= POST_SCROLL_DOM_STABLE_MS) {
|
|
86
|
+
log.debug(`Post-scroll stable: network ${networkIdle}ms, DOM ${domIdle}ms`);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
await new Promise((resolve) => setTimeout(resolve, STABILITY_CHECK_INTERVAL_MS));
|
|
90
|
+
}
|
|
91
|
+
log.debug('Post-scroll stability timeout, proceeding anyway');
|
|
92
|
+
}
|
|
93
|
+
finally {
|
|
94
|
+
await callCDP('Runtime.evaluate', {
|
|
95
|
+
expression: `
|
|
96
|
+
(() => {
|
|
97
|
+
const state = window.__bdg_scrollStability;
|
|
98
|
+
if (state) {
|
|
99
|
+
state.perfObserver?.disconnect();
|
|
100
|
+
state.mutationObserver?.disconnect();
|
|
101
|
+
delete window.__bdg_scrollStability;
|
|
102
|
+
}
|
|
103
|
+
})()
|
|
104
|
+
`,
|
|
105
|
+
returnByValue: true,
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Scroll an element into view before capture; returns the original scroll
|
|
111
|
+
* position so it can be restored afterwards.
|
|
112
|
+
*/
|
|
113
|
+
async function scrollToElement(selector) {
|
|
114
|
+
const result = await callCDP('Runtime.evaluate', {
|
|
115
|
+
expression: `
|
|
116
|
+
(() => {
|
|
117
|
+
const el = (${DEEP_QUERY_JS})(${selectorArgsJS(selector)})[0];
|
|
118
|
+
if (!el) return { found: false };
|
|
119
|
+
const originalX = window.scrollX;
|
|
120
|
+
const originalY = window.scrollY;
|
|
121
|
+
el.scrollIntoView({ block: 'center', behavior: 'instant' });
|
|
122
|
+
return { found: true, originalX, originalY };
|
|
123
|
+
})()
|
|
124
|
+
`,
|
|
125
|
+
returnByValue: true,
|
|
126
|
+
});
|
|
127
|
+
const value = result.data?.result?.result?.value;
|
|
128
|
+
if (!value?.found) {
|
|
129
|
+
const err = noNodesFoundError(selector);
|
|
130
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.RESOURCE_NOT_FOUND);
|
|
131
|
+
}
|
|
132
|
+
await waitForPostScrollStability();
|
|
133
|
+
return { x: value.originalX ?? 0, y: value.originalY ?? 0 };
|
|
134
|
+
}
|
|
135
|
+
async function restoreScrollPosition(position) {
|
|
136
|
+
await callCDP('Runtime.evaluate', {
|
|
137
|
+
expression: `window.scrollTo(${position.x}, ${position.y})`,
|
|
138
|
+
returnByValue: true,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Capture at a pixel ratio of 1 (CSS px = image px) on a high-DPI display:
|
|
143
|
+
* the viewport is overridden at its size (the session's `--viewport`, else
|
|
144
|
+
* the visible one) until the returned function puts back what was there
|
|
145
|
+
* before, the session's viewport or none.
|
|
146
|
+
*
|
|
147
|
+
* @param devicePixelRatio - Page's pixel ratio
|
|
148
|
+
* @param viewport - Visible viewport size
|
|
149
|
+
* @returns Function restoring the device metrics
|
|
150
|
+
*/
|
|
151
|
+
async function useUnitPixelRatio(devicePixelRatio, viewport) {
|
|
152
|
+
if (devicePixelRatio === 1)
|
|
153
|
+
return () => Promise.resolve();
|
|
154
|
+
const sessionViewport = readSessionMetadata()?.viewport;
|
|
155
|
+
const size = sessionViewport ?? {
|
|
156
|
+
width: Math.round(viewport.clientWidth),
|
|
157
|
+
height: Math.round(viewport.clientHeight),
|
|
158
|
+
};
|
|
159
|
+
await callCDP('Emulation.setDeviceMetricsOverride', viewportOverride(size, 1));
|
|
160
|
+
return async () => {
|
|
161
|
+
if (sessionViewport) {
|
|
162
|
+
await callCDP('Emulation.setDeviceMetricsOverride', viewportOverride(sessionViewport));
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
await callCDP('Emulation.clearDeviceMetricsOverride', {});
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Get the bounding box (border box, so padding and border are included) of an
|
|
171
|
+
* element via CDP DOM.getBoxModel.
|
|
172
|
+
*
|
|
173
|
+
* @param ref - Node reference
|
|
174
|
+
* @returns Element bounds in CSS pixels
|
|
175
|
+
*/
|
|
176
|
+
export async function getElementBounds(ref) {
|
|
177
|
+
const response = await callCDP('DOM.getBoxModel', ref);
|
|
178
|
+
const boxModel = response.data?.result;
|
|
179
|
+
if (!boxModel?.model?.border) {
|
|
180
|
+
const err = elementNotVisibleError();
|
|
181
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
182
|
+
}
|
|
183
|
+
const border = boxModel.model.border;
|
|
184
|
+
const x = border[0] ?? 0;
|
|
185
|
+
const y = border[1] ?? 0;
|
|
186
|
+
const width = (border[2] ?? 0) - x;
|
|
187
|
+
const height = (border[5] ?? 0) - y;
|
|
188
|
+
if (width <= 0 || height <= 0) {
|
|
189
|
+
const err = elementZeroDimensionsError();
|
|
190
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
191
|
+
}
|
|
192
|
+
return { x, y, width, height };
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Page coordinates of the visible area's top-left corner. A capture clip is
|
|
196
|
+
* in page coordinates, so a viewport capture must start at the scroll
|
|
197
|
+
* position, not at the page origin (which shows nothing once scrolled). Read
|
|
198
|
+
* after any metrics override, which can move the scroll position.
|
|
199
|
+
*
|
|
200
|
+
* @returns Scroll offset of the visual viewport in CSS pixels
|
|
201
|
+
*/
|
|
202
|
+
async function visibleAreaOrigin() {
|
|
203
|
+
const response = await callCDP('Page.getLayoutMetrics', {});
|
|
204
|
+
const metrics = response.data?.result;
|
|
205
|
+
const viewport = metrics?.cssVisualViewport;
|
|
206
|
+
return { x: viewport?.pageX ?? 0, y: viewport?.pageY ?? 0 };
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Capture a screenshot of the page. Auto-resizes oversized pages by default
|
|
210
|
+
* to keep Claude Vision token cost bounded; falls back to viewport capture
|
|
211
|
+
* when the page is taller than the tall-page threshold.
|
|
212
|
+
*/
|
|
213
|
+
export async function capturePageScreenshot(outputPath, options = {}) {
|
|
214
|
+
const format = options.format ?? 'png';
|
|
215
|
+
const quality = format === 'jpeg' ? (options.quality ?? 90) : undefined;
|
|
216
|
+
const requestedFullPage = options.fullPage ?? true;
|
|
217
|
+
const noResize = options.noResize ?? false;
|
|
218
|
+
let originalScrollPosition;
|
|
219
|
+
if (options.scroll) {
|
|
220
|
+
originalScrollPosition = await scrollToElement(options.scroll);
|
|
221
|
+
}
|
|
222
|
+
const dprResponse = await callCDP('Runtime.evaluate', {
|
|
223
|
+
expression: 'window.devicePixelRatio',
|
|
224
|
+
returnByValue: true,
|
|
225
|
+
});
|
|
226
|
+
const devicePixelRatio = dprResponse.data?.result?.result?.value ?? 1;
|
|
227
|
+
const metricsResponse = await callCDP('Page.getLayoutMetrics', {});
|
|
228
|
+
const metricsResult = metricsResponse.data?.result;
|
|
229
|
+
const contentSize = metricsResult?.contentSize ?? { width: 0, height: 0 };
|
|
230
|
+
const viewport = metricsResult?.visualViewport ?? { clientWidth: 0, clientHeight: 0 };
|
|
231
|
+
const pageIsTooTall = !noResize && requestedFullPage && isTallPage(contentSize.width, contentSize.height);
|
|
232
|
+
const useScroll = options.scroll !== undefined;
|
|
233
|
+
const effectiveFullPage = useScroll ? false : pageIsTooTall ? false : requestedFullPage;
|
|
234
|
+
const captureWidth = effectiveFullPage ? contentSize.width : viewport.clientWidth;
|
|
235
|
+
const captureHeight = effectiveFullPage ? contentSize.height : viewport.clientHeight;
|
|
236
|
+
const resized = shouldResize(captureWidth, captureHeight, noResize);
|
|
237
|
+
const scale = resized ? calculateResizeScale(captureWidth, captureHeight) : 1;
|
|
238
|
+
const finalWidth = Math.round(captureWidth * scale);
|
|
239
|
+
const finalHeight = Math.round(captureHeight * scale);
|
|
240
|
+
const restoreMetrics = await useUnitPixelRatio(devicePixelRatio, viewport);
|
|
241
|
+
if (devicePixelRatio !== 1) {
|
|
242
|
+
if (options.scroll) {
|
|
243
|
+
await callCDP('Runtime.evaluate', {
|
|
244
|
+
expression: `(${DEEP_QUERY_JS})(${selectorArgsJS(options.scroll)})[0]?.scrollIntoView({ block: 'center', behavior: 'instant' })`,
|
|
245
|
+
returnByValue: true,
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
const clipOrigin = effectiveFullPage ? { x: 0, y: 0 } : await visibleAreaOrigin();
|
|
250
|
+
let screenshotResult;
|
|
251
|
+
try {
|
|
252
|
+
const screenshotResponse = await callCDP('Page.captureScreenshot', {
|
|
253
|
+
format,
|
|
254
|
+
...(quality !== undefined && { quality }),
|
|
255
|
+
captureBeyondViewport: effectiveFullPage,
|
|
256
|
+
clip: {
|
|
257
|
+
x: clipOrigin.x,
|
|
258
|
+
y: clipOrigin.y,
|
|
259
|
+
width: captureWidth,
|
|
260
|
+
height: captureHeight,
|
|
261
|
+
scale,
|
|
262
|
+
},
|
|
263
|
+
});
|
|
264
|
+
screenshotResult = screenshotResponse.data?.result;
|
|
265
|
+
}
|
|
266
|
+
finally {
|
|
267
|
+
await restoreMetrics();
|
|
268
|
+
}
|
|
269
|
+
if (!screenshotResult?.data) {
|
|
270
|
+
throw new CDPConnectionError('No screenshot data returned', new Error('Empty response'));
|
|
271
|
+
}
|
|
272
|
+
const buffer = Buffer.from(screenshotResult.data, 'base64');
|
|
273
|
+
const absolutePath = await writeOutputFile(outputPath, buffer);
|
|
274
|
+
const result = {
|
|
275
|
+
path: absolutePath,
|
|
276
|
+
format,
|
|
277
|
+
width: finalWidth,
|
|
278
|
+
height: finalHeight,
|
|
279
|
+
size: buffer.length,
|
|
280
|
+
fullPage: effectiveFullPage,
|
|
281
|
+
captureMode: effectiveFullPage ? 'full_page' : 'viewport',
|
|
282
|
+
finalTokens: calculateImageTokens(finalWidth, finalHeight),
|
|
283
|
+
};
|
|
284
|
+
if (quality !== undefined) {
|
|
285
|
+
result.quality = quality;
|
|
286
|
+
}
|
|
287
|
+
if (!effectiveFullPage) {
|
|
288
|
+
result.viewport = {
|
|
289
|
+
width: viewport.clientWidth,
|
|
290
|
+
height: viewport.clientHeight,
|
|
291
|
+
};
|
|
292
|
+
}
|
|
293
|
+
if (resized) {
|
|
294
|
+
result.resized = true;
|
|
295
|
+
result.originalWidth = captureWidth;
|
|
296
|
+
result.originalHeight = captureHeight;
|
|
297
|
+
result.originalTokens = calculateImageTokens(captureWidth, captureHeight);
|
|
298
|
+
}
|
|
299
|
+
if (pageIsTooTall && !useScroll) {
|
|
300
|
+
const aspectRatio = Math.round((contentSize.height / contentSize.width) * 10) / 10;
|
|
301
|
+
result.fullPageSkipped = {
|
|
302
|
+
reason: 'page_too_tall',
|
|
303
|
+
originalHeight: contentSize.height,
|
|
304
|
+
aspectRatio,
|
|
305
|
+
};
|
|
306
|
+
result.warning = `Full page capture skipped: page too tall (${aspectRatio}:1 aspect ratio). Only viewport captured.`;
|
|
307
|
+
}
|
|
308
|
+
if (useScroll && options.scroll) {
|
|
309
|
+
result.scrolledTo = options.scroll;
|
|
310
|
+
}
|
|
311
|
+
if (originalScrollPosition) {
|
|
312
|
+
await restoreScrollPosition(originalScrollPosition);
|
|
313
|
+
}
|
|
314
|
+
return result;
|
|
315
|
+
}
|
|
316
|
+
/** Descendants {@link CONTENT_OVERFLOW_JS} looks at, so a huge element stays cheap */
|
|
317
|
+
const OVERFLOW_SCAN_LIMIT = 2000;
|
|
318
|
+
/**
|
|
319
|
+
* Page-side distances (CSS px, never negative) by which an element's rendered
|
|
320
|
+
* descendants reach beyond its border box on each side: uncleared floats,
|
|
321
|
+
* absolutely positioned and transformed children. Descendants of an element
|
|
322
|
+
* that clips its overflow (`overflow` other than `visible`) are cut off by it
|
|
323
|
+
* and not counted, nor are fixed ones (they belong to the viewport) or what
|
|
324
|
+
* lies outside the document (skip links at -9999px). Zero everywhere when the
|
|
325
|
+
* element clips its own overflow.
|
|
326
|
+
*/
|
|
327
|
+
const CONTENT_OVERFLOW_JS = `function () {
|
|
328
|
+
const view = this.ownerDocument.defaultView;
|
|
329
|
+
const scroller = this.ownerDocument.scrollingElement || this.ownerDocument.documentElement;
|
|
330
|
+
const own = this.getBoundingClientRect();
|
|
331
|
+
const reach = { left: own.left, top: own.top, right: own.right, bottom: own.bottom };
|
|
332
|
+
const page = { left: -view.scrollX, top: -view.scrollY, right: scroller.scrollWidth - view.scrollX, bottom: scroller.scrollHeight - view.scrollY };
|
|
333
|
+
const clips = (style) => style.overflowX !== 'visible' || style.overflowY !== 'visible';
|
|
334
|
+
let budget = ${OVERFLOW_SCAN_LIMIT};
|
|
335
|
+
const walk = (el) => {
|
|
336
|
+
for (const child of el.children) {
|
|
337
|
+
if (--budget < 0) return;
|
|
338
|
+
const style = view.getComputedStyle(child);
|
|
339
|
+
if (style.display === 'none' || style.position === 'fixed') continue;
|
|
340
|
+
const r = child.getBoundingClientRect();
|
|
341
|
+
if (r.width > 0 && r.height > 0 && style.visibility === 'visible') {
|
|
342
|
+
reach.left = Math.min(reach.left, Math.max(r.left, page.left));
|
|
343
|
+
reach.top = Math.min(reach.top, Math.max(r.top, page.top));
|
|
344
|
+
reach.right = Math.max(reach.right, Math.min(r.right, page.right));
|
|
345
|
+
reach.bottom = Math.max(reach.bottom, Math.min(r.bottom, page.bottom));
|
|
346
|
+
}
|
|
347
|
+
if (!clips(style)) walk(child);
|
|
348
|
+
}
|
|
349
|
+
};
|
|
350
|
+
if (!clips(view.getComputedStyle(this))) walk(this);
|
|
351
|
+
return { left: own.left - reach.left, top: own.top - reach.top, right: reach.right - own.right, bottom: reach.bottom - own.bottom };
|
|
352
|
+
}`;
|
|
353
|
+
/** Overflow (px) below which the capture keeps to the border box (subpixel rounding) */
|
|
354
|
+
const OVERFLOW_SLACK = 1;
|
|
355
|
+
/**
|
|
356
|
+
* Area an element screenshot captures: the border box, grown to the content
|
|
357
|
+
* that overflows it ({@link CONTENT_OVERFLOW_JS}), so floated children are
|
|
358
|
+
* not cropped away.
|
|
359
|
+
*
|
|
360
|
+
* @param ref - Node reference
|
|
361
|
+
* @param bounds - Border box (DOM.getBoxModel coordinates)
|
|
362
|
+
* @returns The area, or the border box when nothing overflows (or the page cannot be asked)
|
|
363
|
+
*/
|
|
364
|
+
async function captureArea(ref, bounds) {
|
|
365
|
+
const objectGroup = `bdg-shot-${process.pid}`;
|
|
366
|
+
try {
|
|
367
|
+
const resolved = await callCDP('DOM.resolveNode', { ...ref, objectGroup });
|
|
368
|
+
const objectId = resolved.data?.result?.object
|
|
369
|
+
.objectId;
|
|
370
|
+
if (!objectId)
|
|
371
|
+
return bounds;
|
|
372
|
+
const response = await callCDP('Runtime.callFunctionOn', {
|
|
373
|
+
objectId,
|
|
374
|
+
functionDeclaration: CONTENT_OVERFLOW_JS,
|
|
375
|
+
returnByValue: true,
|
|
376
|
+
});
|
|
377
|
+
const overflow = response.data?.result
|
|
378
|
+
?.result?.value;
|
|
379
|
+
if (!overflow)
|
|
380
|
+
return bounds;
|
|
381
|
+
const [left, top, right, bottom] = ['left', 'top', 'right', 'bottom'].map((side) => Math.max(0, overflow[side] ?? 0));
|
|
382
|
+
if (Math.max(left, top, right, bottom) <= OVERFLOW_SLACK)
|
|
383
|
+
return bounds;
|
|
384
|
+
return {
|
|
385
|
+
x: bounds.x - left,
|
|
386
|
+
y: bounds.y - top,
|
|
387
|
+
width: bounds.width + left + right,
|
|
388
|
+
height: bounds.height + top + bottom,
|
|
389
|
+
};
|
|
390
|
+
}
|
|
391
|
+
catch (error) {
|
|
392
|
+
log.debug(`Could not measure overflowing content: ${String(error)}`);
|
|
393
|
+
return bounds;
|
|
394
|
+
}
|
|
395
|
+
finally {
|
|
396
|
+
await callCDP('Runtime.releaseObjectGroup', { objectGroup }).catch(() => undefined);
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* Capture a screenshot of a single element: its border box, grown to include
|
|
401
|
+
* content overflowing it ({@link captureArea}). The box model is relative to
|
|
402
|
+
* the viewport and the capture clip to the page, so the page scroll is added
|
|
403
|
+
* (the reported bounds are page coordinates, like `dom layout`'s).
|
|
404
|
+
*/
|
|
405
|
+
export async function captureElementScreenshot(outputPath, ref, options = {}) {
|
|
406
|
+
const box = await getElementBounds(ref);
|
|
407
|
+
const bounds = await captureArea(ref, box);
|
|
408
|
+
const format = options.format ?? 'png';
|
|
409
|
+
const quality = format === 'jpeg' ? (options.quality ?? 90) : undefined;
|
|
410
|
+
const noResize = options.noResize ?? false;
|
|
411
|
+
const dprResponse = await callCDP('Runtime.evaluate', {
|
|
412
|
+
expression: 'window.devicePixelRatio',
|
|
413
|
+
returnByValue: true,
|
|
414
|
+
});
|
|
415
|
+
const devicePixelRatio = dprResponse.data?.result?.result?.value ?? 1;
|
|
416
|
+
const originalWidth = bounds.width;
|
|
417
|
+
const originalHeight = bounds.height;
|
|
418
|
+
const resized = shouldResize(originalWidth, originalHeight, noResize);
|
|
419
|
+
const scale = resized ? calculateResizeScale(originalWidth, originalHeight) : 1;
|
|
420
|
+
const finalWidth = Math.round(originalWidth * scale);
|
|
421
|
+
const finalHeight = Math.round(originalHeight * scale);
|
|
422
|
+
const metricsResponse = await callCDP('Page.getLayoutMetrics', {});
|
|
423
|
+
const metricsResult = metricsResponse.data?.result;
|
|
424
|
+
const viewport = metricsResult?.visualViewport ?? { clientWidth: 800, clientHeight: 600 };
|
|
425
|
+
const scroll = metricsResult?.cssLayoutViewport ?? { pageX: 0, pageY: 0 };
|
|
426
|
+
const onPage = (area) => ({
|
|
427
|
+
...area,
|
|
428
|
+
x: area.x + scroll.pageX,
|
|
429
|
+
y: area.y + scroll.pageY,
|
|
430
|
+
});
|
|
431
|
+
const clip = onPage(bounds);
|
|
432
|
+
const restoreMetrics = await useUnitPixelRatio(devicePixelRatio, viewport);
|
|
433
|
+
let screenshotResult;
|
|
434
|
+
try {
|
|
435
|
+
const screenshotResponse = await callCDP('Page.captureScreenshot', {
|
|
436
|
+
format,
|
|
437
|
+
...(quality !== undefined && { quality }),
|
|
438
|
+
clip: { ...clip, scale },
|
|
439
|
+
captureBeyondViewport: true,
|
|
440
|
+
});
|
|
441
|
+
screenshotResult = screenshotResponse.data?.result;
|
|
442
|
+
}
|
|
443
|
+
finally {
|
|
444
|
+
await restoreMetrics();
|
|
445
|
+
}
|
|
446
|
+
if (!screenshotResult?.data) {
|
|
447
|
+
throw new CDPConnectionError('No screenshot data returned', new Error('Empty response'));
|
|
448
|
+
}
|
|
449
|
+
const buffer = Buffer.from(screenshotResult.data, 'base64');
|
|
450
|
+
const absolutePath = await writeOutputFile(outputPath, buffer);
|
|
451
|
+
const result = {
|
|
452
|
+
path: absolutePath,
|
|
453
|
+
format,
|
|
454
|
+
width: finalWidth,
|
|
455
|
+
height: finalHeight,
|
|
456
|
+
size: buffer.length,
|
|
457
|
+
fullPage: false,
|
|
458
|
+
finalTokens: calculateImageTokens(finalWidth, finalHeight),
|
|
459
|
+
element: {
|
|
460
|
+
bounds: roundBounds(onPage(box)),
|
|
461
|
+
...(bounds !== box && { captured: roundBounds(clip) }),
|
|
462
|
+
},
|
|
463
|
+
};
|
|
464
|
+
if (quality !== undefined) {
|
|
465
|
+
result.quality = quality;
|
|
466
|
+
}
|
|
467
|
+
if (resized) {
|
|
468
|
+
result.resized = true;
|
|
469
|
+
result.originalWidth = originalWidth;
|
|
470
|
+
result.originalHeight = originalHeight;
|
|
471
|
+
result.originalTokens = calculateImageTokens(originalWidth, originalHeight);
|
|
472
|
+
}
|
|
473
|
+
return result;
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Bounds in whole pixels.
|
|
477
|
+
*
|
|
478
|
+
* @param bounds - Bounds
|
|
479
|
+
* @returns Rounded bounds
|
|
480
|
+
*/
|
|
481
|
+
function roundBounds(bounds) {
|
|
482
|
+
return {
|
|
483
|
+
x: Math.round(bounds.x),
|
|
484
|
+
y: Math.round(bounds.y),
|
|
485
|
+
width: Math.round(bounds.width),
|
|
486
|
+
height: Math.round(bounds.height),
|
|
487
|
+
};
|
|
488
|
+
}
|
|
489
|
+
//# sourceMappingURL=screenshot.js.map
|
|
@@ -1,8 +1,22 @@
|
|
|
1
|
-
import type { Command } from 'commander';
|
|
2
1
|
/**
|
|
3
|
-
*
|
|
2
|
+
* `bdg dom` command group registration.
|
|
4
3
|
*
|
|
5
|
-
*
|
|
4
|
+
* Each subcommand lives in its own responsibility module:
|
|
5
|
+
* - `query.ts` — find elements by selector
|
|
6
|
+
* - `get.ts` — read element details (semantic or raw)
|
|
7
|
+
* - `screenshot.ts` — capture page/element/sequence screenshots
|
|
8
|
+
* - `eval.ts` — evaluate JavaScript in the page (or an iframe)
|
|
9
|
+
* - `frames.ts` — list the page's iframes
|
|
10
|
+
* - `listeners.ts` — list event listeners that run for an element
|
|
11
|
+
* - `layout.ts` — positions, sizes and visibility of elements
|
|
12
|
+
* - `wait.ts` — wait for elements to appear, show, contain a text or go away
|
|
13
|
+
*
|
|
14
|
+
* Form-related commands register via `form.ts` and `formInteraction.ts`.
|
|
15
|
+
* Accessibility commands register via `a11y.ts`.
|
|
16
|
+
*/
|
|
17
|
+
import { type Command } from 'commander';
|
|
18
|
+
/**
|
|
19
|
+
* Register DOM telemetry commands on the root Commander program.
|
|
6
20
|
*/
|
|
7
21
|
export declare function registerDomCommands(program: Command): void;
|
|
8
22
|
//# sourceMappingURL=index.d.ts.map
|