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,232 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Key name to CDP key event parameters mapping.
|
|
3
|
+
*
|
|
4
|
+
* Maps human-readable key names to Chrome DevTools Protocol Input.dispatchKeyEvent parameters.
|
|
5
|
+
*/
|
|
6
|
+
import { findSimilar } from '../../utils/suggestions.js';
|
|
7
|
+
/**
|
|
8
|
+
* Modifier key bit flags for CDP Input.dispatchKeyEvent
|
|
9
|
+
* (Alt=1, Ctrl=2, Meta/Command=4, Shift=8).
|
|
10
|
+
*/
|
|
11
|
+
export const MODIFIER_FLAGS = {
|
|
12
|
+
alt: 1,
|
|
13
|
+
ctrl: 2,
|
|
14
|
+
meta: 4,
|
|
15
|
+
shift: 8,
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Map of supported key names to their CDP parameters.
|
|
19
|
+
*
|
|
20
|
+
* Keys are case-insensitive for user convenience.
|
|
21
|
+
*/
|
|
22
|
+
const KEY_DEFINITIONS = {
|
|
23
|
+
enter: { code: 'Enter', key: 'Enter', keyCode: 13, text: '\r' },
|
|
24
|
+
tab: { code: 'Tab', key: 'Tab', keyCode: 9 },
|
|
25
|
+
escape: { code: 'Escape', key: 'Escape', keyCode: 27 },
|
|
26
|
+
space: { code: 'Space', key: ' ', keyCode: 32, text: ' ' },
|
|
27
|
+
backspace: { code: 'Backspace', key: 'Backspace', keyCode: 8 },
|
|
28
|
+
delete: { code: 'Delete', key: 'Delete', keyCode: 46 },
|
|
29
|
+
arrowup: { code: 'ArrowUp', key: 'ArrowUp', keyCode: 38 },
|
|
30
|
+
arrowdown: { code: 'ArrowDown', key: 'ArrowDown', keyCode: 40 },
|
|
31
|
+
arrowleft: { code: 'ArrowLeft', key: 'ArrowLeft', keyCode: 37 },
|
|
32
|
+
arrowright: { code: 'ArrowRight', key: 'ArrowRight', keyCode: 39 },
|
|
33
|
+
home: { code: 'Home', key: 'Home', keyCode: 36 },
|
|
34
|
+
end: { code: 'End', key: 'End', keyCode: 35 },
|
|
35
|
+
pageup: { code: 'PageUp', key: 'PageUp', keyCode: 33 },
|
|
36
|
+
pagedown: { code: 'PageDown', key: 'PageDown', keyCode: 34 },
|
|
37
|
+
f1: { code: 'F1', key: 'F1', keyCode: 112 },
|
|
38
|
+
f2: { code: 'F2', key: 'F2', keyCode: 113 },
|
|
39
|
+
f3: { code: 'F3', key: 'F3', keyCode: 114 },
|
|
40
|
+
f4: { code: 'F4', key: 'F4', keyCode: 115 },
|
|
41
|
+
f5: { code: 'F5', key: 'F5', keyCode: 116 },
|
|
42
|
+
f6: { code: 'F6', key: 'F6', keyCode: 117 },
|
|
43
|
+
f7: { code: 'F7', key: 'F7', keyCode: 118 },
|
|
44
|
+
f8: { code: 'F8', key: 'F8', keyCode: 119 },
|
|
45
|
+
f9: { code: 'F9', key: 'F9', keyCode: 120 },
|
|
46
|
+
f10: { code: 'F10', key: 'F10', keyCode: 121 },
|
|
47
|
+
f11: { code: 'F11', key: 'F11', keyCode: 122 },
|
|
48
|
+
f12: { code: 'F12', key: 'F12', keyCode: 123 },
|
|
49
|
+
};
|
|
50
|
+
for (let i = 0; i < 26; i++) {
|
|
51
|
+
const letter = String.fromCharCode(97 + i); // 'a' = 97
|
|
52
|
+
const upperLetter = letter.toUpperCase();
|
|
53
|
+
KEY_DEFINITIONS[letter] = {
|
|
54
|
+
code: `Key${upperLetter}`,
|
|
55
|
+
key: letter,
|
|
56
|
+
keyCode: 65 + i, // 'A' = 65
|
|
57
|
+
text: letter,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
for (let i = 0; i < 10; i++) {
|
|
61
|
+
const digit = String(i);
|
|
62
|
+
KEY_DEFINITIONS[digit] = {
|
|
63
|
+
code: `Digit${digit}`,
|
|
64
|
+
key: digit,
|
|
65
|
+
keyCode: 48 + i, // '0' = 48
|
|
66
|
+
text: digit,
|
|
67
|
+
shiftText: ')!@#$%^&*('.charAt(i),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get key definition by name (case-insensitive).
|
|
72
|
+
*
|
|
73
|
+
* @param keyName - Human-readable key name (e.g., "Enter", "Tab", "a")
|
|
74
|
+
* @returns Key definition or undefined if not found
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* const def = getKeyDefinition('Enter');
|
|
79
|
+
* // { code: 'Enter', key: 'Enter', keyCode: 13 }
|
|
80
|
+
*
|
|
81
|
+
* const letterDef = getKeyDefinition('a');
|
|
82
|
+
* // { code: 'KeyA', key: 'a', keyCode: 65 }
|
|
83
|
+
* ```
|
|
84
|
+
*/
|
|
85
|
+
export function getKeyDefinition(keyName) {
|
|
86
|
+
const name = keyName.toLowerCase();
|
|
87
|
+
const digit = keyName.length === 1 ? SHIFTED_DIGITS.indexOf(keyName) : -1;
|
|
88
|
+
if (digit !== -1)
|
|
89
|
+
return KEY_DEFINITIONS[String(digit)];
|
|
90
|
+
return KEY_DEFINITIONS[KEY_ALIASES[name] ?? name];
|
|
91
|
+
}
|
|
92
|
+
/** Other names users write for keys */
|
|
93
|
+
const KEY_ALIASES = {
|
|
94
|
+
esc: 'escape',
|
|
95
|
+
return: 'enter',
|
|
96
|
+
del: 'delete',
|
|
97
|
+
spacebar: 'space',
|
|
98
|
+
' ': 'space',
|
|
99
|
+
up: 'arrowup',
|
|
100
|
+
down: 'arrowdown',
|
|
101
|
+
left: 'arrowleft',
|
|
102
|
+
right: 'arrowright',
|
|
103
|
+
pgup: 'pageup',
|
|
104
|
+
pgdn: 'pagedown',
|
|
105
|
+
pagedn: 'pagedown',
|
|
106
|
+
};
|
|
107
|
+
/** Characters typed with Shift on the digit keys 0-9 (US layout) */
|
|
108
|
+
const SHIFTED_DIGITS = ')!@#$%^&*(';
|
|
109
|
+
/**
|
|
110
|
+
* Whether a key name needs Shift to produce it (an uppercase letter, or a
|
|
111
|
+
* symbol on a digit key such as "!").
|
|
112
|
+
*
|
|
113
|
+
* @param keyName - Key name as given
|
|
114
|
+
* @returns True if Shift is implied
|
|
115
|
+
*/
|
|
116
|
+
export function impliesShift(keyName) {
|
|
117
|
+
return /^[A-Z]$/.test(keyName) || (keyName.length === 1 && SHIFTED_DIGITS.includes(keyName));
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Key names closest to an unknown one.
|
|
121
|
+
*
|
|
122
|
+
* @param keyName - Unknown key name
|
|
123
|
+
* @returns Up to three key names, in their usual spelling
|
|
124
|
+
*/
|
|
125
|
+
export function similarKeyNames(keyName) {
|
|
126
|
+
const names = Object.values(KEY_DEFINITIONS)
|
|
127
|
+
.map((definition) => definition.key)
|
|
128
|
+
.filter((key) => key.length > 1);
|
|
129
|
+
return findSimilar(keyName, names);
|
|
130
|
+
}
|
|
131
|
+
/** Accepted modifier names (and common aliases) mapped to their flag. */
|
|
132
|
+
const MODIFIER_NAMES = {
|
|
133
|
+
alt: 'alt',
|
|
134
|
+
option: 'alt',
|
|
135
|
+
opt: 'alt',
|
|
136
|
+
ctrl: 'ctrl',
|
|
137
|
+
control: 'ctrl',
|
|
138
|
+
meta: 'meta',
|
|
139
|
+
cmd: 'meta',
|
|
140
|
+
command: 'meta',
|
|
141
|
+
shift: 'shift',
|
|
142
|
+
};
|
|
143
|
+
/**
|
|
144
|
+
* Split a comma-separated modifier list into lowercase names.
|
|
145
|
+
*
|
|
146
|
+
* @param modifiers - e.g. "Ctrl, shift"
|
|
147
|
+
* @returns Non-empty names
|
|
148
|
+
*/
|
|
149
|
+
function modifierNames(modifiers) {
|
|
150
|
+
return modifiers
|
|
151
|
+
.toLowerCase()
|
|
152
|
+
.split(',')
|
|
153
|
+
.map((part) => part.trim())
|
|
154
|
+
.filter(Boolean);
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Names in a modifier list that are not recognized.
|
|
158
|
+
*
|
|
159
|
+
* @param modifiers - Comma-separated modifier names
|
|
160
|
+
* @returns Unknown names (empty when all are valid)
|
|
161
|
+
*/
|
|
162
|
+
export function findUnknownModifiers(modifiers) {
|
|
163
|
+
return modifierNames(modifiers).filter((name) => !(name in MODIFIER_NAMES));
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Parse modifier string into CDP modifier flags.
|
|
167
|
+
*
|
|
168
|
+
* @param modifiers - Comma-separated modifier names (e.g., "ctrl,shift"; aliases cmd, control, option)
|
|
169
|
+
* @returns Combined modifier bit flags
|
|
170
|
+
*
|
|
171
|
+
* @example
|
|
172
|
+
* ```typescript
|
|
173
|
+
* parseModifiers('ctrl,shift'); // Returns 10 (2 + 8)
|
|
174
|
+
* parseModifiers('cmd'); // Returns 4
|
|
175
|
+
* parseModifiers(''); // Returns 0
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
export function parseModifiers(modifiers) {
|
|
179
|
+
if (!modifiers)
|
|
180
|
+
return 0;
|
|
181
|
+
return modifierNames(modifiers).reduce((flags, name) => {
|
|
182
|
+
const flag = MODIFIER_NAMES[name];
|
|
183
|
+
return flag ? flags | MODIFIER_FLAGS[flag] : flags;
|
|
184
|
+
}, 0);
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Human-readable names of set modifier flags.
|
|
188
|
+
*
|
|
189
|
+
* @param flags - CDP modifier bit flags
|
|
190
|
+
* @returns e.g. ["Ctrl", "Shift"]
|
|
191
|
+
*/
|
|
192
|
+
export function describeModifiers(flags) {
|
|
193
|
+
const labels = {
|
|
194
|
+
ctrl: 'Ctrl',
|
|
195
|
+
alt: 'Alt',
|
|
196
|
+
shift: 'Shift',
|
|
197
|
+
meta: 'Meta',
|
|
198
|
+
};
|
|
199
|
+
return Object.keys(labels)
|
|
200
|
+
.filter((name) => flags & MODIFIER_FLAGS[name])
|
|
201
|
+
.map((name) => labels[name]);
|
|
202
|
+
}
|
|
203
|
+
/** Editor commands of the standard Ctrl/Cmd shortcuts, by key code */
|
|
204
|
+
const SHORTCUT_COMMANDS = {
|
|
205
|
+
KeyA: 'selectAll',
|
|
206
|
+
KeyC: 'copy',
|
|
207
|
+
KeyX: 'cut',
|
|
208
|
+
KeyV: 'paste',
|
|
209
|
+
KeyZ: 'undo',
|
|
210
|
+
};
|
|
211
|
+
/**
|
|
212
|
+
* Editor commands a key press triggers, like a physical keyboard does.
|
|
213
|
+
*
|
|
214
|
+
* Chrome only runs shortcuts such as Ctrl+A (Cmd+A on macOS) for events it
|
|
215
|
+
* gets from the OS; for CDP key events the command has to be named. Either
|
|
216
|
+
* Ctrl or Meta works, so scripts behave the same on every platform; Shift+Z
|
|
217
|
+
* redoes.
|
|
218
|
+
*
|
|
219
|
+
* @param code - Key code, e.g. "KeyA"
|
|
220
|
+
* @param flags - CDP modifier bit flags
|
|
221
|
+
* @returns Editor commands for `Input.dispatchKeyEvent`, empty if none
|
|
222
|
+
*/
|
|
223
|
+
export function shortcutCommands(code, flags) {
|
|
224
|
+
const command = SHORTCUT_COMMANDS[code];
|
|
225
|
+
const shortcutModifier = flags & (MODIFIER_FLAGS.ctrl | MODIFIER_FLAGS.meta);
|
|
226
|
+
if (!command || !shortcutModifier || flags & MODIFIER_FLAGS.alt)
|
|
227
|
+
return [];
|
|
228
|
+
if (command === 'undo' && flags & MODIFIER_FLAGS.shift)
|
|
229
|
+
return ['redo'];
|
|
230
|
+
return flags & MODIFIER_FLAGS.shift ? [] : [command];
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=keyMapping.js.map
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Positions, sizes and visibility of elements (`bdg dom layout`).
|
|
3
|
+
*
|
|
4
|
+
* One page-side pass per command measures every match: its box in page and
|
|
5
|
+
* viewport coordinates (iframe offsets included), what clips it, whether it
|
|
6
|
+
* is rendered, what covers its center and the styles that decide how it
|
|
7
|
+
* shows. The measurements are classified outside the page
|
|
8
|
+
* ({@link classifyViewportPosition}).
|
|
9
|
+
*/
|
|
10
|
+
import type { CDPConnection } from '../../connection/cdp.js';
|
|
11
|
+
import type { DomLayoutCommand } from '../../ipc/protocol/commands.js';
|
|
12
|
+
import type { LayoutComputedStyle, LayoutResult, PageLayout } from '../../ipc/protocol/domTypes.js';
|
|
13
|
+
import { type ElementGeometry } from './elementGeometry.js';
|
|
14
|
+
/** Matches measured per command (the rest are counted as omitted) */
|
|
15
|
+
export declare const LAYOUT_ELEMENT_LIMIT = 100;
|
|
16
|
+
/**
|
|
17
|
+
* Page-side end of a visible span kept clear of an overlay scrollbar along
|
|
18
|
+
* an edge (16 CSS px wide): overlay scrollbars (macOS, mobile) show for about a
|
|
19
|
+
* second after a scroll and catch hit tests, which then return the scroller.
|
|
20
|
+
* The span ends before the strip when it reaches into it and also shows
|
|
21
|
+
* outside it; without overlay scrollbars along the edge it is unchanged.
|
|
22
|
+
* Arguments: span start and end, the edge, whether overlay scrollbars show there.
|
|
23
|
+
*/
|
|
24
|
+
export declare const CLEAR_OF_SCROLLBAR_JS = "(start, end, edge, overlay) =>\n overlay && end > edge - 16 && edge - 16 > start ? edge - 16 : end";
|
|
25
|
+
/** One element as {@link LAYOUT_JS} measures it. */
|
|
26
|
+
export interface RawElementLayout {
|
|
27
|
+
index: number;
|
|
28
|
+
tag: string;
|
|
29
|
+
element: string;
|
|
30
|
+
text: string;
|
|
31
|
+
context: string;
|
|
32
|
+
geometry: ElementGeometry;
|
|
33
|
+
coveredBy: string | null;
|
|
34
|
+
computed: LayoutComputedStyle;
|
|
35
|
+
}
|
|
36
|
+
/** What {@link LAYOUT_JS} returns. */
|
|
37
|
+
export interface RawLayout {
|
|
38
|
+
/** Elements the selector matched */
|
|
39
|
+
count: number;
|
|
40
|
+
/** Set when at least one element was measured */
|
|
41
|
+
page?: PageLayout;
|
|
42
|
+
elements: RawElementLayout[];
|
|
43
|
+
/** Measured inside a cross-origin iframe: `page` and the coordinates are that frame's */
|
|
44
|
+
crossOriginFrame?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Measure the elements a selector (or cached index) refers to.
|
|
48
|
+
*
|
|
49
|
+
* @param cdp - CDP connection
|
|
50
|
+
* @param params - Selector (and index) or backend node id
|
|
51
|
+
* @returns Layout report
|
|
52
|
+
* @throws CommandError (83) no match, (81) index out of range or invalid
|
|
53
|
+
* selector, (87) the cached element left the page
|
|
54
|
+
*/
|
|
55
|
+
export declare function inspectLayout(cdp: CDPConnection, params: DomLayoutCommand): Promise<LayoutResult>;
|
|
56
|
+
/**
|
|
57
|
+
* Turn page-side measurements into the layout report: rounded page and
|
|
58
|
+
* viewport coordinates, viewport position and text preview per element.
|
|
59
|
+
*
|
|
60
|
+
* @param raw - Measurements with at least one element
|
|
61
|
+
* @param params - Request (selector and index)
|
|
62
|
+
* @returns Layout report
|
|
63
|
+
*/
|
|
64
|
+
export declare function buildLayoutResult(raw: RawLayout & {
|
|
65
|
+
page: PageLayout;
|
|
66
|
+
}, params: Pick<DomLayoutCommand, 'selector' | 'index'>): LayoutResult;
|
|
67
|
+
//# sourceMappingURL=layout.d.ts.map
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Positions, sizes and visibility of elements (`bdg dom layout`).
|
|
3
|
+
*
|
|
4
|
+
* One page-side pass per command measures every match: its box in page and
|
|
5
|
+
* viewport coordinates (iframe offsets included), what clips it, whether it
|
|
6
|
+
* is rendered, what covers its center and the styles that decide how it
|
|
7
|
+
* shows. The measurements are classified outside the page
|
|
8
|
+
* ({@link classifyViewportPosition}).
|
|
9
|
+
*/
|
|
10
|
+
import { CommandError } from '../../errors/index.js';
|
|
11
|
+
import { operationFailedError } from '../../errors/messages.js';
|
|
12
|
+
import { ELEMENT_GEOMETRY_JS, FRAME_OFFSET_JS, VIEWPORT_SIZE_JS, classifyViewportPosition, } from './elementGeometry.js';
|
|
13
|
+
import { ELEMENT_CONTEXT_JS, ELEMENT_DESCRIPTION_JS, ELEMENT_TEXT_JS, textPreview, } from './elementInfo.js';
|
|
14
|
+
import { throwIfInvalidSelector } from './formFillHelpers/shared.js';
|
|
15
|
+
import { findFrameOwner, placeInOwnerFrame } from './frameLayout.js';
|
|
16
|
+
import { measureFrameMapping } from './frameScopedConnection.js';
|
|
17
|
+
import { DEEP_QUERY_JS, missingElementError, selectorArgsJS } from './targetNode.js';
|
|
18
|
+
import { createLogger } from '../../ui/logging/index.js';
|
|
19
|
+
import { getErrorMessage } from '../../utils/errors.js';
|
|
20
|
+
import { EXIT_CODES } from '../../utils/exitCodes.js';
|
|
21
|
+
const log = createLogger('dom');
|
|
22
|
+
/** Matches measured per command (the rest are counted as omitted) */
|
|
23
|
+
export const LAYOUT_ELEMENT_LIMIT = 100;
|
|
24
|
+
/**
|
|
25
|
+
* Page-side end of a visible span kept clear of an overlay scrollbar along
|
|
26
|
+
* an edge (16 CSS px wide): overlay scrollbars (macOS, mobile) show for about a
|
|
27
|
+
* second after a scroll and catch hit tests, which then return the scroller.
|
|
28
|
+
* The span ends before the strip when it reaches into it and also shows
|
|
29
|
+
* outside it; without overlay scrollbars along the edge it is unchanged.
|
|
30
|
+
* Arguments: span start and end, the edge, whether overlay scrollbars show there.
|
|
31
|
+
*/
|
|
32
|
+
export const CLEAR_OF_SCROLLBAR_JS = `(start, end, edge, overlay) =>
|
|
33
|
+
overlay && end > edge - 16 && edge - 16 > start ? edge - 16 : end`;
|
|
34
|
+
/**
|
|
35
|
+
* Page-side edges of the top-level viewport with overlay scrollbars: the page
|
|
36
|
+
* scrolls along an axis while its scrollbar takes no space (the window is as
|
|
37
|
+
* wide or tall as the viewport).
|
|
38
|
+
*/
|
|
39
|
+
const VIEWPORT_OVERLAY_JS = `(view, viewport) => {
|
|
40
|
+
const scroller = view.document.scrollingElement || view.document.documentElement;
|
|
41
|
+
return {
|
|
42
|
+
right: scroller.scrollHeight > viewport.height && view.innerWidth - viewport.width < 1,
|
|
43
|
+
bottom: scroller.scrollWidth > viewport.width && view.innerHeight - viewport.height < 1
|
|
44
|
+
};
|
|
45
|
+
}`;
|
|
46
|
+
/** Elements a click on any of their content activates */
|
|
47
|
+
const CLICK_TARGET_SELECTOR = 'a[href], button, [role="button"], [role="link"], label, summary, input, select, textarea';
|
|
48
|
+
/**
|
|
49
|
+
* Page-side test of whether an element on top of another one is part of the
|
|
50
|
+
* same click target, so a click there does what a click on the element
|
|
51
|
+
* would: both are in the same link, button or label (an overlay span inside
|
|
52
|
+
* the card's link), or in links to the same URL (a card's overlay link next
|
|
53
|
+
* to its headline link), or the element is plain content (in no link or
|
|
54
|
+
* button) of a card covered by its "faux block link" (news sites): an
|
|
55
|
+
* absolutely positioned `<a href>` without visible text of its own (empty,
|
|
56
|
+
* or an aria-label only), directly in the card (not `<body>`) and spanning
|
|
57
|
+
* it. Dismiss buttons, promo links with text and `[role=button]` overlays
|
|
58
|
+
* still count as covers.
|
|
59
|
+
*/
|
|
60
|
+
const SAME_CLICK_TARGET_JS = `(node, hit) => {
|
|
61
|
+
const parentOf = (n) => n.parentElement || (n.parentNode && n.parentNode.host) || null;
|
|
62
|
+
const targetOf = (n) => {
|
|
63
|
+
for (let p = n; p; p = parentOf(p)) {
|
|
64
|
+
if (p.matches && p.matches(${JSON.stringify(CLICK_TARGET_SELECTOR)})) return p;
|
|
65
|
+
}
|
|
66
|
+
return null;
|
|
67
|
+
};
|
|
68
|
+
const theirs = targetOf(hit);
|
|
69
|
+
if (!theirs) return false;
|
|
70
|
+
const mine = targetOf(node);
|
|
71
|
+
if (mine) return mine === theirs || (mine.localName === 'a' && theirs.localName === 'a' && mine.href === theirs.href);
|
|
72
|
+
const card = theirs.parentElement;
|
|
73
|
+
if (theirs.localName !== 'a' || theirs.hasAttribute('role')) return false;
|
|
74
|
+
if (!card || card === node.ownerDocument.body || !card.contains(node)) return false;
|
|
75
|
+
const style = theirs.ownerDocument.defaultView.getComputedStyle(theirs);
|
|
76
|
+
if (style.position !== 'absolute' || (theirs.innerText || '').trim() !== '') return false;
|
|
77
|
+
const outer = theirs.getBoundingClientRect();
|
|
78
|
+
const inner = card.getBoundingClientRect();
|
|
79
|
+
return outer.left <= inner.left + 1 && outer.top <= inner.top + 1 && outer.right >= inner.right - 1 && outer.bottom >= inner.bottom - 1;
|
|
80
|
+
}`;
|
|
81
|
+
/**
|
|
82
|
+
* Page function: layout of the matches in `found` (all up to `limit`, or the
|
|
83
|
+
* one at `index`) and of the top-level page. An element covers another when
|
|
84
|
+
* it is the topmost element at the center of the largest visible part of the
|
|
85
|
+
* other's boxes (a wrapped link has one per line; the strip where overlay
|
|
86
|
+
* scrollbars show is avoided when possible, {@link CLEAR_OF_SCROLLBAR_JS}) and does not lie inside it,
|
|
87
|
+
* nor part of the element's own click target ({@link SAME_CLICK_TARGET_JS}: the link, button
|
|
88
|
+
* or label it is in, or the overlay link of its card; a click there does the same). An
|
|
89
|
+
* ancestor covers it only when the ancestor is painted above it there (its
|
|
90
|
+
* `::before`/`::after` overlay, or its background over a negative
|
|
91
|
+
* `z-index`), as `dom click` finds: the element is in the hit-test stack below
|
|
92
|
+
* the ancestor. Hit-testing goes up through the iframes, so an overlay over
|
|
93
|
+
* an iframe covers the elements in it. Elements hit-testing skips
|
|
94
|
+
* (`pointer-events: none`, also through an iframe) get no cover.
|
|
95
|
+
*/
|
|
96
|
+
const LAYOUT_JS = `function (found, index, limit) {
|
|
97
|
+
const geometryOf = ${ELEMENT_GEOMETRY_JS};
|
|
98
|
+
const viewportSize = ${VIEWPORT_SIZE_JS};
|
|
99
|
+
const frameOffset = ${FRAME_OFFSET_JS};
|
|
100
|
+
const describe = ${ELEMENT_DESCRIPTION_JS};
|
|
101
|
+
const contextOf = ${ELEMENT_CONTEXT_JS};
|
|
102
|
+
const textOf = ${ELEMENT_TEXT_JS};
|
|
103
|
+
const clearOfScrollbar = ${CLEAR_OF_SCROLLBAR_JS};
|
|
104
|
+
const viewportOverlay = ${VIEWPORT_OVERLAY_JS};
|
|
105
|
+
const picked = index === null
|
|
106
|
+
? found.slice(0, limit).map((el, i) => [i, el])
|
|
107
|
+
: (found[index] ? [[index, found[index]]] : []);
|
|
108
|
+
if (picked.length === 0) return { count: found.length, elements: [] };
|
|
109
|
+
let top = picked[0][1].ownerDocument.defaultView;
|
|
110
|
+
while (top.frameElement) top = top.parent;
|
|
111
|
+
const scroller = top.document.scrollingElement || top.document.documentElement;
|
|
112
|
+
const page = {
|
|
113
|
+
viewport: viewportSize(top),
|
|
114
|
+
scroll: { x: top.scrollX, y: top.scrollY },
|
|
115
|
+
document: { width: scroller.scrollWidth, height: scroller.scrollHeight },
|
|
116
|
+
colorScheme: top.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'
|
|
117
|
+
};
|
|
118
|
+
const pageOverlay = viewportOverlay(top, page.viewport);
|
|
119
|
+
const encloses = (outer, node) => {
|
|
120
|
+
for (let n = node; n; n = n.parentNode || n.host) if (n === outer) return true;
|
|
121
|
+
return false;
|
|
122
|
+
};
|
|
123
|
+
const sameTarget = ${SAME_CLICK_TARGET_JS};
|
|
124
|
+
const coverAt = (node, x, y) => {
|
|
125
|
+
const root = node.getRootNode();
|
|
126
|
+
const scope = typeof root.elementFromPoint === 'function' ? root : node.ownerDocument;
|
|
127
|
+
const hit = scope.elementFromPoint(x, y);
|
|
128
|
+
if (!hit || encloses(node, hit) || sameTarget(node, hit)) return null;
|
|
129
|
+
if (!encloses(hit, node)) return hit;
|
|
130
|
+
return scope.elementsFromPoint(x, y).indexOf(node) > 0 ? hit : null;
|
|
131
|
+
};
|
|
132
|
+
const visibleCenter = (el, g) => {
|
|
133
|
+
const bounds = [{ x: 0, y: 0, width: page.viewport.width, height: page.viewport.height }].concat(g.clip ? [g.clip] : []);
|
|
134
|
+
let best = null;
|
|
135
|
+
for (const r of Array.from(el.getClientRects())) {
|
|
136
|
+
const boxes = bounds.concat([{ x: r.left + g.offset.x, y: r.top + g.offset.y, width: r.width, height: r.height }]);
|
|
137
|
+
const left = Math.max(...boxes.map((b) => b.x));
|
|
138
|
+
const top = Math.max(...boxes.map((b) => b.y));
|
|
139
|
+
const right = Math.min(...boxes.map((b) => b.x + b.width));
|
|
140
|
+
const bottom = Math.min(...boxes.map((b) => b.y + b.height));
|
|
141
|
+
const area = (right - left) * (bottom - top);
|
|
142
|
+
if (!(right > left && bottom > top) || (best && area <= best.area)) continue;
|
|
143
|
+
let clearRight = clearOfScrollbar(left, right, page.viewport.width, pageOverlay.right);
|
|
144
|
+
let clearBottom = clearOfScrollbar(top, bottom, page.viewport.height, pageOverlay.bottom);
|
|
145
|
+
if (g.clip) {
|
|
146
|
+
clearRight = clearOfScrollbar(left, clearRight, g.clip.x + g.clip.width, g.clipOverlay.right);
|
|
147
|
+
clearBottom = clearOfScrollbar(top, clearBottom, g.clip.y + g.clip.height, g.clipOverlay.bottom);
|
|
148
|
+
}
|
|
149
|
+
best = { area: area, x: (left + clearRight) / 2, y: (top + clearBottom) / 2 };
|
|
150
|
+
}
|
|
151
|
+
return best;
|
|
152
|
+
};
|
|
153
|
+
const hitTestable = (node) => node.ownerDocument.defaultView.getComputedStyle(node).pointerEvents !== 'none';
|
|
154
|
+
const coveredBy = (el, g) => {
|
|
155
|
+
const center = hitTestable(el) && visibleCenter(el, g);
|
|
156
|
+
if (!center) return null;
|
|
157
|
+
let x = center.x - g.offset.x;
|
|
158
|
+
let y = center.y - g.offset.y;
|
|
159
|
+
let cover = coverAt(el, x, y);
|
|
160
|
+
for (let view = el.ownerDocument.defaultView; !cover && view.frameElement; view = view.parent) {
|
|
161
|
+
if (!hitTestable(view.frameElement)) return null;
|
|
162
|
+
const offset = frameOffset(view.frameElement);
|
|
163
|
+
x += offset.x;
|
|
164
|
+
y += offset.y;
|
|
165
|
+
cover = coverAt(view.frameElement, x, y);
|
|
166
|
+
}
|
|
167
|
+
return cover ? describe(cover) : null;
|
|
168
|
+
};
|
|
169
|
+
const elements = picked.map(([i, el]) => {
|
|
170
|
+
const style = el.ownerDocument.defaultView.getComputedStyle(el);
|
|
171
|
+
const geometry = geometryOf(el);
|
|
172
|
+
return {
|
|
173
|
+
index: i,
|
|
174
|
+
tag: el.tagName.toLowerCase(),
|
|
175
|
+
element: describe(el),
|
|
176
|
+
text: String(textOf(el)).replace(/\\s+/g, ' ').trim().slice(0, 1000),
|
|
177
|
+
context: contextOf(el),
|
|
178
|
+
geometry: geometry,
|
|
179
|
+
coveredBy: geometry.hidden ? null : coveredBy(el, geometry),
|
|
180
|
+
computed: { display: style.display, visibility: style.visibility, position: style.position, opacity: style.opacity, zIndex: style.zIndex }
|
|
181
|
+
};
|
|
182
|
+
});
|
|
183
|
+
return { count: found.length, page: page, elements: elements, crossOriginFrame: top.parent !== top };
|
|
184
|
+
}`;
|
|
185
|
+
/** Distinguishes the object groups of concurrent calls */
|
|
186
|
+
let groupCounter = 0;
|
|
187
|
+
/**
|
|
188
|
+
* Measure the elements a selector (or cached index) refers to.
|
|
189
|
+
*
|
|
190
|
+
* @param cdp - CDP connection
|
|
191
|
+
* @param params - Selector (and index) or backend node id
|
|
192
|
+
* @returns Layout report
|
|
193
|
+
* @throws CommandError (83) no match, (81) index out of range or invalid
|
|
194
|
+
* selector, (87) the cached element left the page
|
|
195
|
+
*/
|
|
196
|
+
export async function inspectLayout(cdp, params) {
|
|
197
|
+
const objectGroup = `bdg-layout-${++groupCounter}`;
|
|
198
|
+
try {
|
|
199
|
+
const raw = params.backendNodeId === undefined
|
|
200
|
+
? await measureSelector(cdp, params)
|
|
201
|
+
: await measureNode(cdp, params.backendNodeId, objectGroup);
|
|
202
|
+
if (!raw.page || raw.elements.length === 0)
|
|
203
|
+
throw missingElementError(params, raw.count);
|
|
204
|
+
return buildLayoutResult({ ...raw, page: raw.page }, params);
|
|
205
|
+
}
|
|
206
|
+
finally {
|
|
207
|
+
void cdp
|
|
208
|
+
.send('Runtime.releaseObjectGroup', { objectGroup })
|
|
209
|
+
.catch((error) => log.debug(`Object group not released: ${getErrorMessage(error)}`));
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Measure the matches of a selector (searching open shadow roots and
|
|
214
|
+
* same-origin frames) in one page evaluation.
|
|
215
|
+
*
|
|
216
|
+
* @param cdp - CDP connection
|
|
217
|
+
* @param params - Selector and optional index
|
|
218
|
+
* @returns Measurements
|
|
219
|
+
* @throws CommandError (81) invalid selector, (91) page script failure
|
|
220
|
+
*/
|
|
221
|
+
async function measureSelector(cdp, params) {
|
|
222
|
+
const found = `(${DEEP_QUERY_JS})(${selectorArgsJS(params.selector)})`;
|
|
223
|
+
const response = (await cdp.send('Runtime.evaluate', {
|
|
224
|
+
expression: `(${LAYOUT_JS})(${found}, ${params.index ?? null}, ${LAYOUT_ELEMENT_LIMIT})`,
|
|
225
|
+
returnByValue: true,
|
|
226
|
+
}));
|
|
227
|
+
if (response.exceptionDetails) {
|
|
228
|
+
throwIfInvalidSelector(response.exceptionDetails, params.selector);
|
|
229
|
+
const err = operationFailedError('measure the elements', response.exceptionDetails.text);
|
|
230
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.SCRIPT_ERROR);
|
|
231
|
+
}
|
|
232
|
+
return response.result.value;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Measure one exact element (from the query cache).
|
|
236
|
+
*
|
|
237
|
+
* @param cdp - CDP connection
|
|
238
|
+
* @param backendNodeId - Backend node id
|
|
239
|
+
* @param objectGroup - Object group for the handle
|
|
240
|
+
* @returns Measurements; no elements when the node left the page. An element
|
|
241
|
+
* of a cross-origin iframe (from an a11y query) is placed in the top-level
|
|
242
|
+
* viewport through the iframe's own measurements.
|
|
243
|
+
*/
|
|
244
|
+
async function measureNode(cdp, backendNodeId, objectGroup) {
|
|
245
|
+
const resolved = (await cdp
|
|
246
|
+
.send('DOM.resolveNode', { backendNodeId, objectGroup })
|
|
247
|
+
.catch((error) => {
|
|
248
|
+
log.debug(`Node ${backendNodeId} not resolved: ${getErrorMessage(error)}`);
|
|
249
|
+
return {};
|
|
250
|
+
}));
|
|
251
|
+
const objectId = resolved.object?.objectId;
|
|
252
|
+
if (!objectId)
|
|
253
|
+
return { count: 0, elements: [] };
|
|
254
|
+
const response = (await cdp.send('Runtime.callFunctionOn', {
|
|
255
|
+
objectId,
|
|
256
|
+
functionDeclaration: `function () { return (${LAYOUT_JS})(this.isConnected ? [this] : [], null, 1); }`,
|
|
257
|
+
returnByValue: true,
|
|
258
|
+
}));
|
|
259
|
+
const raw = response.result.value ?? { count: 0, elements: [] };
|
|
260
|
+
if (!raw.crossOriginFrame)
|
|
261
|
+
return raw;
|
|
262
|
+
const owner = await findFrameOwner(cdp, objectId);
|
|
263
|
+
if (owner === undefined)
|
|
264
|
+
return raw;
|
|
265
|
+
const ownerLayout = await measureNode(cdp, owner, objectGroup);
|
|
266
|
+
return placeInOwnerFrame(raw, ownerLayout, await measureFrameMapping(cdp, objectId));
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Turn page-side measurements into the layout report: rounded page and
|
|
270
|
+
* viewport coordinates, viewport position and text preview per element.
|
|
271
|
+
*
|
|
272
|
+
* @param raw - Measurements with at least one element
|
|
273
|
+
* @param params - Request (selector and index)
|
|
274
|
+
* @returns Layout report
|
|
275
|
+
*/
|
|
276
|
+
export function buildLayoutResult(raw, params) {
|
|
277
|
+
const omitted = params.index === undefined ? raw.count - raw.elements.length : 0;
|
|
278
|
+
return {
|
|
279
|
+
success: true,
|
|
280
|
+
selector: params.selector,
|
|
281
|
+
count: raw.count,
|
|
282
|
+
page: roundPage(raw.page),
|
|
283
|
+
elements: raw.elements.map((element) => elementLayout(element, raw.page)),
|
|
284
|
+
...(omitted > 0 && { omitted }),
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Page layout with whole pixels.
|
|
289
|
+
*
|
|
290
|
+
* @param page - Measured page layout
|
|
291
|
+
* @returns Rounded page layout
|
|
292
|
+
*/
|
|
293
|
+
function roundPage(page) {
|
|
294
|
+
return {
|
|
295
|
+
viewport: { width: Math.round(page.viewport.width), height: Math.round(page.viewport.height) },
|
|
296
|
+
scroll: { x: Math.round(page.scroll.x), y: Math.round(page.scroll.y) },
|
|
297
|
+
document: { width: Math.round(page.document.width), height: Math.round(page.document.height) },
|
|
298
|
+
...(page.colorScheme && { colorScheme: page.colorScheme }),
|
|
299
|
+
};
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* Layout of one element.
|
|
303
|
+
*
|
|
304
|
+
* @param raw - Element measurements
|
|
305
|
+
* @param page - Page layout (viewport size and scroll position)
|
|
306
|
+
* @returns Element layout; `coveredBy` only for elements that are in view
|
|
307
|
+
*/
|
|
308
|
+
function elementLayout(raw, page) {
|
|
309
|
+
const { rect } = raw.geometry;
|
|
310
|
+
const placement = classifyViewportPosition(raw.geometry, page.viewport);
|
|
311
|
+
const inView = placement.inViewport === 'visible' || placement.inViewport === 'partly';
|
|
312
|
+
const text = textPreview(raw.text);
|
|
313
|
+
return {
|
|
314
|
+
index: raw.index,
|
|
315
|
+
tag: raw.tag,
|
|
316
|
+
element: raw.element,
|
|
317
|
+
...(text && { text }),
|
|
318
|
+
...(raw.context && { context: raw.context }),
|
|
319
|
+
bounds: {
|
|
320
|
+
x: Math.round(rect.x + page.scroll.x),
|
|
321
|
+
y: Math.round(rect.y + page.scroll.y),
|
|
322
|
+
width: Math.round(rect.width),
|
|
323
|
+
height: Math.round(rect.height),
|
|
324
|
+
},
|
|
325
|
+
viewport: { x: Math.round(rect.x), y: Math.round(rect.y) },
|
|
326
|
+
...placement,
|
|
327
|
+
...(inView && raw.coveredBy && { coveredBy: raw.coveredBy }),
|
|
328
|
+
...(raw.geometry.invisible && { invisible: raw.geometry.invisible }),
|
|
329
|
+
...(raw.geometry.inert && { inert: true }),
|
|
330
|
+
computed: raw.computed,
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
//# sourceMappingURL=layout.js.map
|