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
package/dist/telemetry/a11y.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import type { Protocol } from '../connection/typed-cdp.js';
|
|
2
|
-
import type { A11yNode, A11yTree, A11yQueryPattern, A11yQueryResult } from '../types.js';
|
|
2
|
+
import type { A11yNode, A11yTree, A11yQueryPattern, A11yQueryResult, NodeRef } from '../types.js';
|
|
3
3
|
/**
|
|
4
4
|
* Builds accessibility tree from raw CDP nodes.
|
|
5
5
|
*
|
|
6
6
|
* Pure function that filters out ignored nodes and builds the tree structure.
|
|
7
|
+
* Children that are ignored are replaced by their own non-ignored children
|
|
8
|
+
* (as DevTools shows the tree), so every `childIds` entry is in `nodes`, and
|
|
9
|
+
* nodes are listed depth-first from the root (document order).
|
|
7
10
|
* Separated from collectA11yTree for easier unit testing.
|
|
8
11
|
*
|
|
9
12
|
* @param rawNodes - Raw AXNode array from CDP
|
|
@@ -14,7 +17,7 @@ export declare function buildTreeFromRawNodes(rawNodes: Protocol.Accessibility.A
|
|
|
14
17
|
/**
|
|
15
18
|
* Collects the full accessibility tree from the page via IPC.
|
|
16
19
|
*
|
|
17
|
-
* Uses the
|
|
20
|
+
* Uses the session's persistent CDP connection through callCDP for consistency
|
|
18
21
|
* with other DOM commands and to avoid connection conflicts.
|
|
19
22
|
*
|
|
20
23
|
* @returns Parsed and filtered accessibility tree
|
|
@@ -25,6 +28,8 @@ export declare function collectA11yTree(): Promise<A11yTree>;
|
|
|
25
28
|
* Queries accessibility tree by pattern (role, name, description).
|
|
26
29
|
*
|
|
27
30
|
* Performs case-insensitive matching with AND logic for multiple fields.
|
|
31
|
+
* An element reported more than once (by the page's tree and its frame's)
|
|
32
|
+
* is listed once.
|
|
28
33
|
*
|
|
29
34
|
* @param tree - Accessibility tree to search
|
|
30
35
|
* @param pattern - Query pattern with optional role, name, description
|
|
@@ -46,36 +51,42 @@ export declare function queryA11yTree(tree: A11yTree, pattern: A11yQueryPattern)
|
|
|
46
51
|
/**
|
|
47
52
|
* Parses query pattern string into A11yQueryPattern object.
|
|
48
53
|
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
54
|
+
* Fields are `key:value` or `key=value`, separated by spaces or commas.
|
|
55
|
+
* Keys: role, name, description (desc). Case-insensitive. A role ends at the
|
|
56
|
+
* next `key:`; a name or description runs to the next role/name/description
|
|
57
|
+
* field with a value, or to the end, so it may contain spaces and colons
|
|
58
|
+
* (`name=E-mail address:`). Quote a value to end it explicitly.
|
|
52
59
|
*
|
|
53
60
|
* @param patternString - Query pattern string
|
|
54
61
|
* @returns Parsed query pattern
|
|
62
|
+
* @throws CommandError (81) for unknown keys, also a misspelled one inside a name
|
|
55
63
|
*
|
|
56
64
|
* @example
|
|
57
65
|
* ```typescript
|
|
58
|
-
* parseQueryPattern('role:button name:Submit')
|
|
59
|
-
* //
|
|
60
|
-
*
|
|
61
|
-
* parseQueryPattern('
|
|
62
|
-
* // => { role: 'heading' }
|
|
63
|
-
*
|
|
64
|
-
* parseQueryPattern('name:Email')
|
|
65
|
-
* // => { name: 'Email' }
|
|
66
|
+
* parseQueryPattern('role:button name:Submit') // { role: 'button', name: 'Submit' }
|
|
67
|
+
* parseQueryPattern('role=link,name=Google Chrome') // { role: 'link', name: 'Google Chrome' }
|
|
68
|
+
* parseQueryPattern('name:"Sign in" role:button') // { name: 'Sign in', role: 'button' }
|
|
69
|
+
* parseQueryPattern('name=E-mail address:') // { name: 'E-mail address:' }
|
|
66
70
|
* ```
|
|
67
71
|
*/
|
|
68
72
|
export declare function parseQueryPattern(patternString: string): A11yQueryPattern;
|
|
69
73
|
/**
|
|
70
|
-
* Resolve accessibility properties for a DOM node
|
|
74
|
+
* Resolve accessibility properties for a DOM node via IPC.
|
|
71
75
|
*
|
|
72
|
-
* Uses the
|
|
73
|
-
*
|
|
76
|
+
* Uses the session's persistent CDP connection through callCDP for consistency.
|
|
77
|
+
* Selectors are resolved by the caller (see `resolveBackendNodeIds`), so they
|
|
78
|
+
* reach shadow roots and same-origin iframes like every other DOM command.
|
|
74
79
|
*
|
|
75
|
-
* @param
|
|
76
|
-
* @param nodeId - Optional nodeId to use directly instead of querying by selector
|
|
80
|
+
* @param target - Node reference
|
|
77
81
|
* @returns A11y node or null if not found
|
|
78
|
-
* @throws Error if selector is invalid or element not found
|
|
79
82
|
*/
|
|
80
|
-
export declare function resolveA11yNode(
|
|
83
|
+
export declare function resolveA11yNode(target: NodeRef): Promise<A11yNode | null>;
|
|
84
|
+
/**
|
|
85
|
+
* Why an element has no node in the accessibility tree (e.g. it is not
|
|
86
|
+
* rendered, aria-hidden, or a decorative image with `alt=""`).
|
|
87
|
+
*
|
|
88
|
+
* @param target - Node reference
|
|
89
|
+
* @returns Chrome's reasons in plain words (empty if unknown)
|
|
90
|
+
*/
|
|
91
|
+
export declare function a11yIgnoredReasons(target: NodeRef): Promise<string[]>;
|
|
81
92
|
//# sourceMappingURL=a11y.d.ts.map
|
package/dist/telemetry/a11y.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
|
+
import { CommandError } from '../errors/index.js';
|
|
2
|
+
import { unknownQueryFieldError } from '../errors/messages.js';
|
|
1
3
|
import { callCDP } from '../ipc/client.js';
|
|
4
|
+
import { childFrameIds } from '../runtime/dom/frameLayout.js';
|
|
5
|
+
import { EXIT_CODES } from '../utils/exitCodes.js';
|
|
6
|
+
import { levenshteinDistance } from '../utils/levenshtein.js';
|
|
2
7
|
/**
|
|
3
8
|
* Builds accessibility tree from raw CDP nodes.
|
|
4
9
|
*
|
|
5
10
|
* Pure function that filters out ignored nodes and builds the tree structure.
|
|
11
|
+
* Children that are ignored are replaced by their own non-ignored children
|
|
12
|
+
* (as DevTools shows the tree), so every `childIds` entry is in `nodes`, and
|
|
13
|
+
* nodes are listed depth-first from the root (document order).
|
|
6
14
|
* Separated from collectA11yTree for easier unit testing.
|
|
7
15
|
*
|
|
8
16
|
* @param rawNodes - Raw AXNode array from CDP
|
|
@@ -10,29 +18,55 @@ import { callCDP } from '../ipc/client.js';
|
|
|
10
18
|
* @throws Error if no root node found
|
|
11
19
|
*/
|
|
12
20
|
export function buildTreeFromRawNodes(rawNodes) {
|
|
21
|
+
const rawById = new Map(rawNodes.map((rawNode) => [rawNode.nodeId, rawNode]));
|
|
22
|
+
const rootRaw = rawNodes.find((rawNode) => !rawNode.ignored);
|
|
23
|
+
if (!rootRaw) {
|
|
24
|
+
throw new CommandError('No root node found in accessibility tree', { suggestion: 'The page may not be fully loaded. Wait and retry.' }, EXIT_CODES.SOFTWARE_ERROR);
|
|
25
|
+
}
|
|
13
26
|
const nodes = new Map();
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
27
|
+
const visit = (rawNode) => {
|
|
28
|
+
if (nodes.has(rawNode.nodeId))
|
|
29
|
+
return;
|
|
19
30
|
const node = parseA11yNode(rawNode);
|
|
31
|
+
const childIds = visibleChildIds(rawNode, rawById);
|
|
32
|
+
if (childIds.length > 0)
|
|
33
|
+
node.childIds = childIds;
|
|
34
|
+
else
|
|
35
|
+
delete node.childIds;
|
|
20
36
|
nodes.set(node.nodeId, node);
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return {
|
|
27
|
-
root,
|
|
28
|
-
nodes,
|
|
29
|
-
count: nodes.size,
|
|
37
|
+
for (const childId of childIds) {
|
|
38
|
+
const child = rawById.get(childId);
|
|
39
|
+
if (child)
|
|
40
|
+
visit(child);
|
|
41
|
+
}
|
|
30
42
|
};
|
|
43
|
+
visit(rootRaw);
|
|
44
|
+
rawNodes.filter((rawNode) => !rawNode.ignored).forEach(visit);
|
|
45
|
+
const root = nodes.get(rootRaw.nodeId);
|
|
46
|
+
return { root, nodes, count: nodes.size };
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Ids of a node's children as shown: ignored children are replaced by their
|
|
50
|
+
* own non-ignored descendants; ids missing from the tree are dropped.
|
|
51
|
+
*
|
|
52
|
+
* @param rawNode - Node whose children to list
|
|
53
|
+
* @param rawById - All raw nodes by id
|
|
54
|
+
* @param seen - Ids already listed (guards against cycles)
|
|
55
|
+
* @returns Child ids, all of non-ignored nodes in the tree
|
|
56
|
+
*/
|
|
57
|
+
function visibleChildIds(rawNode, rawById, seen = new Set()) {
|
|
58
|
+
return (rawNode.childIds ?? []).flatMap((childId) => {
|
|
59
|
+
const child = rawById.get(childId);
|
|
60
|
+
if (!child || seen.has(childId))
|
|
61
|
+
return [];
|
|
62
|
+
seen.add(childId);
|
|
63
|
+
return child.ignored ? visibleChildIds(child, rawById, seen) : [childId];
|
|
64
|
+
});
|
|
31
65
|
}
|
|
32
66
|
/**
|
|
33
67
|
* Collects the full accessibility tree from the page via IPC.
|
|
34
68
|
*
|
|
35
|
-
* Uses the
|
|
69
|
+
* Uses the session's persistent CDP connection through callCDP for consistency
|
|
36
70
|
* with other DOM commands and to avoid connection conflicts.
|
|
37
71
|
*
|
|
38
72
|
* @returns Parsed and filtered accessibility tree
|
|
@@ -44,14 +78,77 @@ export async function collectA11yTree() {
|
|
|
44
78
|
const response = await callCDP('Accessibility.getFullAXTree', {});
|
|
45
79
|
const result = response.data?.result;
|
|
46
80
|
if (!result?.nodes) {
|
|
47
|
-
throw new
|
|
81
|
+
throw new CommandError('Failed to get accessibility tree', { suggestion: 'CDP returned no nodes. The page may not be fully loaded.' }, EXIT_CODES.SOFTWARE_ERROR);
|
|
48
82
|
}
|
|
49
|
-
return buildTreeFromRawNodes(result.nodes);
|
|
83
|
+
return buildTreeFromRawNodes([...result.nodes, ...(await collectFrameNodes(result.nodes))]);
|
|
50
84
|
}
|
|
51
85
|
finally {
|
|
52
86
|
await callCDP('Accessibility.disable', {});
|
|
53
87
|
}
|
|
54
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Accessibility nodes of the page's iframes, attached under their `Iframe`
|
|
91
|
+
* node (the page's own tree stops there). Frames in another process
|
|
92
|
+
* (cross-origin) cannot be read this way and are skipped. Node ids are
|
|
93
|
+
* prefixed per frame, as each frame numbers its nodes on its own.
|
|
94
|
+
*
|
|
95
|
+
* @param pageNodes - The page's nodes (their iframe nodes get the frame root as
|
|
96
|
+
* child; nested frames attach to their parent frame's nodes)
|
|
97
|
+
* @returns Nodes of all readable frames
|
|
98
|
+
*/
|
|
99
|
+
async function collectFrameNodes(pageNodes) {
|
|
100
|
+
const tree = (await callCDP('Page.getFrameTree', {})).data?.result;
|
|
101
|
+
const known = [...pageNodes];
|
|
102
|
+
const collected = [];
|
|
103
|
+
for (const [index, frameId] of childFrameIds(tree?.frameTree).entries()) {
|
|
104
|
+
const nodes = await frameNodes(frameId, `f${index}:`, known);
|
|
105
|
+
known.push(...nodes);
|
|
106
|
+
collected.push(...nodes);
|
|
107
|
+
}
|
|
108
|
+
return collected;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* One frame's nodes, with ids prefixed, its root attached to the node of its
|
|
112
|
+
* `<iframe>` element.
|
|
113
|
+
*
|
|
114
|
+
* @param frameId - Frame id
|
|
115
|
+
* @param prefix - Prefix for the frame's node ids
|
|
116
|
+
* @param ownerNodes - Nodes that may contain the frame's `<iframe>` node
|
|
117
|
+
* @returns The frame's nodes, or none when it cannot be read
|
|
118
|
+
*/
|
|
119
|
+
async function frameNodes(frameId, prefix, ownerNodes) {
|
|
120
|
+
const response = await callCDP('Accessibility.getFullAXTree', { frameId });
|
|
121
|
+
const nodes = response.data?.result
|
|
122
|
+
?.nodes;
|
|
123
|
+
const owner = (await callCDP('DOM.getFrameOwner', { frameId })).data?.result;
|
|
124
|
+
if (!nodes?.length || !owner)
|
|
125
|
+
return [];
|
|
126
|
+
const prefixed = nodes.map((node) => ({
|
|
127
|
+
...node,
|
|
128
|
+
nodeId: prefix + node.nodeId,
|
|
129
|
+
...(node.parentId && { parentId: prefix + node.parentId }),
|
|
130
|
+
...(node.childIds && { childIds: node.childIds.map((id) => prefix + id) }),
|
|
131
|
+
}));
|
|
132
|
+
const root = prefixed.find((node) => !node.parentId);
|
|
133
|
+
const iframeNode = ownerNodes.find((node) => node.backendDOMNodeId === owner.backendNodeId);
|
|
134
|
+
if (root && iframeNode)
|
|
135
|
+
iframeNode.childIds = [...(iframeNode.childIds ?? []), root.nodeId];
|
|
136
|
+
return prefixed;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Chrome reports some states (`checked`, `pressed`) as the strings "true" and
|
|
140
|
+
* "false" (they may also be "mixed"); make those booleans like the others.
|
|
141
|
+
*
|
|
142
|
+
* @param value - Property value
|
|
143
|
+
* @returns The value, with "true"/"false" as booleans
|
|
144
|
+
*/
|
|
145
|
+
function booleanIfFlag(value) {
|
|
146
|
+
if (value === 'true')
|
|
147
|
+
return true;
|
|
148
|
+
if (value === 'false')
|
|
149
|
+
return false;
|
|
150
|
+
return value;
|
|
151
|
+
}
|
|
55
152
|
/**
|
|
56
153
|
* Parses raw CDP AXNode into simplified A11yNode format.
|
|
57
154
|
*
|
|
@@ -91,7 +188,7 @@ function parseA11yNode(rawNode) {
|
|
|
91
188
|
node.required = prop.value.value === true;
|
|
92
189
|
}
|
|
93
190
|
else {
|
|
94
|
-
props[prop.name] = prop.value.value;
|
|
191
|
+
props[prop.name] = booleanIfFlag(prop.value.value);
|
|
95
192
|
}
|
|
96
193
|
}
|
|
97
194
|
if (Object.keys(props).length > 0) {
|
|
@@ -120,10 +217,18 @@ function extractRole(rawNode) {
|
|
|
120
217
|
}
|
|
121
218
|
return 'unknown';
|
|
122
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* Roles of text nodes: they repeat the name of the element they are in (a
|
|
222
|
+
* name search found every button three times) and are not elements that
|
|
223
|
+
* commands can act on. Left out unless the query asks for the role.
|
|
224
|
+
*/
|
|
225
|
+
const TEXT_ROLES = new Set(['statictext', 'inlinetextbox']);
|
|
123
226
|
/**
|
|
124
227
|
* Queries accessibility tree by pattern (role, name, description).
|
|
125
228
|
*
|
|
126
229
|
* Performs case-insensitive matching with AND logic for multiple fields.
|
|
230
|
+
* An element reported more than once (by the page's tree and its frame's)
|
|
231
|
+
* is listed once.
|
|
127
232
|
*
|
|
128
233
|
* @param tree - Accessibility tree to search
|
|
129
234
|
* @param pattern - Query pattern with optional role, name, description
|
|
@@ -143,10 +248,19 @@ function extractRole(rawNode) {
|
|
|
143
248
|
*/
|
|
144
249
|
export function queryA11yTree(tree, pattern) {
|
|
145
250
|
const matches = [];
|
|
251
|
+
const seenElements = new Set();
|
|
252
|
+
const wantsText = pattern.role !== undefined && TEXT_ROLES.has(pattern.role.toLowerCase());
|
|
146
253
|
for (const node of tree.nodes.values()) {
|
|
147
|
-
if (
|
|
148
|
-
|
|
254
|
+
if (!wantsText && TEXT_ROLES.has(node.role.toLowerCase()))
|
|
255
|
+
continue;
|
|
256
|
+
if (!matchesPattern(node, pattern))
|
|
257
|
+
continue;
|
|
258
|
+
if (node.backendDOMNodeId !== undefined) {
|
|
259
|
+
if (seenElements.has(node.backendDOMNodeId))
|
|
260
|
+
continue;
|
|
261
|
+
seenElements.add(node.backendDOMNodeId);
|
|
149
262
|
}
|
|
263
|
+
matches.push(node);
|
|
150
264
|
}
|
|
151
265
|
return {
|
|
152
266
|
nodes: matches,
|
|
@@ -154,128 +268,175 @@ export function queryA11yTree(tree, pattern) {
|
|
|
154
268
|
pattern,
|
|
155
269
|
};
|
|
156
270
|
}
|
|
271
|
+
/**
|
|
272
|
+
* Match a value against a query term.
|
|
273
|
+
*
|
|
274
|
+
* Without `*` the term matches as a case-insensitive substring (or exactly,
|
|
275
|
+
* for `exact`); `*` matches any run of characters.
|
|
276
|
+
*
|
|
277
|
+
* @param value - Node value (role, name, description)
|
|
278
|
+
* @param term - Query term
|
|
279
|
+
* @param exact - Whole-value match instead of substring
|
|
280
|
+
* @returns True on match
|
|
281
|
+
*/
|
|
282
|
+
function matchesTerm(value, term, exact = false) {
|
|
283
|
+
if (value === undefined)
|
|
284
|
+
return false;
|
|
285
|
+
if (!term.includes('*')) {
|
|
286
|
+
const [v, t] = [value.toLowerCase(), term.toLowerCase()];
|
|
287
|
+
return exact ? v === t : v.includes(t);
|
|
288
|
+
}
|
|
289
|
+
const source = term
|
|
290
|
+
.split('*')
|
|
291
|
+
.map((part) => part.replace(/[.+?^${}()|[\]\\]/g, '\\$&'))
|
|
292
|
+
.join('[\\s\\S]*');
|
|
293
|
+
return new RegExp(exact ? `^${source}$` : source, 'i').test(value);
|
|
294
|
+
}
|
|
157
295
|
/**
|
|
158
296
|
* Checks if a node matches the query pattern.
|
|
159
297
|
*
|
|
160
|
-
* All specified fields must match (AND logic)
|
|
161
|
-
*
|
|
298
|
+
* All specified fields must match (AND logic), case-insensitively: role
|
|
299
|
+
* exactly, name and description as substrings; `*` is a wildcard.
|
|
162
300
|
*
|
|
163
301
|
* @param node - A11y node to test
|
|
164
302
|
* @param pattern - Query pattern
|
|
165
303
|
* @returns True if node matches all pattern criteria
|
|
166
304
|
*/
|
|
167
305
|
function matchesPattern(node, pattern) {
|
|
168
|
-
if (pattern.role)
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
if (!node.name) {
|
|
175
|
-
return false;
|
|
176
|
-
}
|
|
177
|
-
if (!node.name.toLowerCase().includes(pattern.name.toLowerCase())) {
|
|
178
|
-
return false;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
if (pattern.description) {
|
|
182
|
-
if (!node.description) {
|
|
183
|
-
return false;
|
|
184
|
-
}
|
|
185
|
-
if (!node.description.toLowerCase().includes(pattern.description.toLowerCase())) {
|
|
186
|
-
return false;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
306
|
+
if (pattern.role && !matchesTerm(node.role, pattern.role, true))
|
|
307
|
+
return false;
|
|
308
|
+
if (pattern.name && !matchesTerm(node.name, pattern.name))
|
|
309
|
+
return false;
|
|
310
|
+
if (pattern.description && !matchesTerm(node.description, pattern.description))
|
|
311
|
+
return false;
|
|
189
312
|
return true;
|
|
190
313
|
}
|
|
314
|
+
/** Query fields and their aliases. */
|
|
315
|
+
const QUERY_FIELDS = {
|
|
316
|
+
role: 'role',
|
|
317
|
+
name: 'name',
|
|
318
|
+
description: 'description',
|
|
319
|
+
desc: 'description',
|
|
320
|
+
};
|
|
321
|
+
/** The next `key:`/`key=` anywhere (fields may follow other text). */
|
|
322
|
+
const QUERY_KEY = /([a-z]+)\s*[:=]/i;
|
|
323
|
+
/** A quoted value (it may contain anything but its own quote). */
|
|
324
|
+
const QUOTED_QUERY_VALUE = /^\s*("[^"]*"|'[^']*')/;
|
|
325
|
+
/** Where a role value ends: at the next `key:` after a space or comma. */
|
|
326
|
+
const NEXT_QUERY_FIELD = /[\s,]+[a-z]+\s*[:=]/i;
|
|
327
|
+
/**
|
|
328
|
+
* Where a name or description ends: only at a known field that has a value,
|
|
329
|
+
* so names keep their spaces and colons (`name=E-mail address:`).
|
|
330
|
+
*/
|
|
331
|
+
const NEXT_KNOWN_QUERY_FIELD = /[\s,]+(?:role|name|description|desc)\s*[:=](?=\s*[^\s,])/i;
|
|
332
|
+
/**
|
|
333
|
+
* Read one field value.
|
|
334
|
+
*
|
|
335
|
+
* @param text - Text after `key:`
|
|
336
|
+
* @param field - Field the value is for
|
|
337
|
+
* @returns The value, where it ends in `text`, and whether it was quoted
|
|
338
|
+
*/
|
|
339
|
+
function readQueryValue(text, field) {
|
|
340
|
+
const quoted = QUOTED_QUERY_VALUE.exec(text);
|
|
341
|
+
if (quoted?.[1])
|
|
342
|
+
return { value: quoted[1].slice(1, -1), end: quoted[0].length, quoted: true };
|
|
343
|
+
const next = (field === 'role' ? NEXT_QUERY_FIELD : NEXT_KNOWN_QUERY_FIELD).exec(text);
|
|
344
|
+
const end = next ? next.index : text.length;
|
|
345
|
+
const value = text
|
|
346
|
+
.slice(0, end)
|
|
347
|
+
.trim()
|
|
348
|
+
.replace(/,+$/, '')
|
|
349
|
+
.replace(/^(["'])(.*)\1$/s, '$2');
|
|
350
|
+
return { value, end, quoted: false };
|
|
351
|
+
}
|
|
191
352
|
/**
|
|
192
353
|
* Parses query pattern string into A11yQueryPattern object.
|
|
193
354
|
*
|
|
194
|
-
*
|
|
195
|
-
*
|
|
196
|
-
*
|
|
355
|
+
* Fields are `key:value` or `key=value`, separated by spaces or commas.
|
|
356
|
+
* Keys: role, name, description (desc). Case-insensitive. A role ends at the
|
|
357
|
+
* next `key:`; a name or description runs to the next role/name/description
|
|
358
|
+
* field with a value, or to the end, so it may contain spaces and colons
|
|
359
|
+
* (`name=E-mail address:`). Quote a value to end it explicitly.
|
|
197
360
|
*
|
|
198
361
|
* @param patternString - Query pattern string
|
|
199
362
|
* @returns Parsed query pattern
|
|
363
|
+
* @throws CommandError (81) for unknown keys, also a misspelled one inside a name
|
|
200
364
|
*
|
|
201
365
|
* @example
|
|
202
366
|
* ```typescript
|
|
203
|
-
* parseQueryPattern('role:button name:Submit')
|
|
204
|
-
* //
|
|
205
|
-
*
|
|
206
|
-
* parseQueryPattern('
|
|
207
|
-
* // => { role: 'heading' }
|
|
208
|
-
*
|
|
209
|
-
* parseQueryPattern('name:Email')
|
|
210
|
-
* // => { name: 'Email' }
|
|
367
|
+
* parseQueryPattern('role:button name:Submit') // { role: 'button', name: 'Submit' }
|
|
368
|
+
* parseQueryPattern('role=link,name=Google Chrome') // { role: 'link', name: 'Google Chrome' }
|
|
369
|
+
* parseQueryPattern('name:"Sign in" role:button') // { name: 'Sign in', role: 'button' }
|
|
370
|
+
* parseQueryPattern('name=E-mail address:') // { name: 'E-mail address:' }
|
|
211
371
|
* ```
|
|
212
372
|
*/
|
|
213
373
|
export function parseQueryPattern(patternString) {
|
|
214
374
|
const pattern = {};
|
|
215
|
-
|
|
216
|
-
for (
|
|
217
|
-
const
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
const
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
continue;
|
|
229
|
-
}
|
|
230
|
-
const normalizedKey = key.toLowerCase();
|
|
231
|
-
if (normalizedKey === 'role') {
|
|
232
|
-
pattern.role = value;
|
|
233
|
-
}
|
|
234
|
-
else if (normalizedKey === 'name') {
|
|
235
|
-
pattern.name = value;
|
|
236
|
-
}
|
|
237
|
-
else if (normalizedKey === 'description' || normalizedKey === 'desc') {
|
|
238
|
-
pattern.description = value;
|
|
239
|
-
}
|
|
375
|
+
let rest = patternString;
|
|
376
|
+
for (let key = QUERY_KEY.exec(rest); key; key = QUERY_KEY.exec(rest)) {
|
|
377
|
+
const rawKey = key[1] ?? '';
|
|
378
|
+
const field = QUERY_FIELDS[rawKey.toLowerCase()];
|
|
379
|
+
if (!field)
|
|
380
|
+
throwUnknownField(rawKey);
|
|
381
|
+
const valueText = rest.slice(key.index + key[0].length);
|
|
382
|
+
const { value, end, quoted } = readQueryValue(valueText, field);
|
|
383
|
+
if (!quoted && field !== 'role')
|
|
384
|
+
checkMisspelledField(value, field);
|
|
385
|
+
if (value)
|
|
386
|
+
pattern[field] = value;
|
|
387
|
+
rest = valueText.slice(end);
|
|
240
388
|
}
|
|
241
389
|
return pattern;
|
|
242
390
|
}
|
|
243
391
|
/**
|
|
244
|
-
*
|
|
392
|
+
* Throw the exit-81 error for an unknown query field.
|
|
393
|
+
*
|
|
394
|
+
* @param field - The unrecognized key
|
|
395
|
+
* @param similar - A known field it looks like a typo of
|
|
396
|
+
* @param value - The name or description that absorbed it
|
|
397
|
+
* @throws CommandError (81)
|
|
398
|
+
*/
|
|
399
|
+
function throwUnknownField(field, similar, value) {
|
|
400
|
+
const err = unknownQueryFieldError(field, similar, value);
|
|
401
|
+
throw new CommandError(err.message, { suggestion: err.suggestion }, EXIT_CODES.INVALID_ARGUMENTS);
|
|
402
|
+
}
|
|
403
|
+
/** A `word:`/`word=` inside a name or description. */
|
|
404
|
+
const ABSORBED_KEY = /[\s,]([a-z]+)\s*[:=]/gi;
|
|
405
|
+
/**
|
|
406
|
+
* Reject a name or description that swallowed a misspelled field
|
|
407
|
+
* (`name:Save rol:button`): a `word:` within edit distance 1 of role, name or
|
|
408
|
+
* desc (2 of description). Wider distances would catch common label words
|
|
409
|
+
* (`Date:`, `Note:`, `Code:`).
|
|
410
|
+
*
|
|
411
|
+
* @param value - Unquoted name or description
|
|
412
|
+
* @param field - Field it is the value of
|
|
413
|
+
* @throws CommandError (81) with a "did you mean" suggestion
|
|
414
|
+
*/
|
|
415
|
+
function checkMisspelledField(value, field) {
|
|
416
|
+
for (const [, word = ''] of value.matchAll(ABSORBED_KEY)) {
|
|
417
|
+
const lower = word.toLowerCase();
|
|
418
|
+
if (QUERY_FIELDS[lower])
|
|
419
|
+
continue;
|
|
420
|
+
const similar = Object.keys(QUERY_FIELDS).find((name) => levenshteinDistance(lower, name) <= (name.length > 4 ? 2 : 1));
|
|
421
|
+
if (similar)
|
|
422
|
+
throwUnknownField(word, similar, `${field}=${value}`);
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* Resolve accessibility properties for a DOM node via IPC.
|
|
245
427
|
*
|
|
246
|
-
* Uses the
|
|
247
|
-
*
|
|
428
|
+
* Uses the session's persistent CDP connection through callCDP for consistency.
|
|
429
|
+
* Selectors are resolved by the caller (see `resolveBackendNodeIds`), so they
|
|
430
|
+
* reach shadow roots and same-origin iframes like every other DOM command.
|
|
248
431
|
*
|
|
249
|
-
* @param
|
|
250
|
-
* @param nodeId - Optional nodeId to use directly instead of querying by selector
|
|
432
|
+
* @param target - Node reference
|
|
251
433
|
* @returns A11y node or null if not found
|
|
252
|
-
* @throws Error if selector is invalid or element not found
|
|
253
434
|
*/
|
|
254
|
-
export async function resolveA11yNode(
|
|
435
|
+
export async function resolveA11yNode(target) {
|
|
255
436
|
await callCDP('Accessibility.enable', {});
|
|
256
437
|
try {
|
|
257
|
-
let targetNodeId;
|
|
258
|
-
if (nodeId !== undefined) {
|
|
259
|
-
targetNodeId = nodeId;
|
|
260
|
-
}
|
|
261
|
-
else {
|
|
262
|
-
const docResponse = await callCDP('DOM.getDocument', {});
|
|
263
|
-
const doc = docResponse.data?.result;
|
|
264
|
-
if (!doc?.root?.nodeId) {
|
|
265
|
-
throw new Error('Failed to get document root');
|
|
266
|
-
}
|
|
267
|
-
const nodeResponse = await callCDP('DOM.querySelector', {
|
|
268
|
-
nodeId: doc.root.nodeId,
|
|
269
|
-
selector,
|
|
270
|
-
});
|
|
271
|
-
const nodeResult = nodeResponse.data?.result;
|
|
272
|
-
if (!nodeResult?.nodeId) {
|
|
273
|
-
return null;
|
|
274
|
-
}
|
|
275
|
-
targetNodeId = nodeResult.nodeId;
|
|
276
|
-
}
|
|
277
438
|
const a11yResponse = await callCDP('Accessibility.getPartialAXTree', {
|
|
278
|
-
|
|
439
|
+
...target,
|
|
279
440
|
fetchRelatives: false,
|
|
280
441
|
});
|
|
281
442
|
const a11yResult = a11yResponse.data?.result;
|
|
@@ -292,4 +453,40 @@ export async function resolveA11yNode(selector, nodeId) {
|
|
|
292
453
|
await callCDP('Accessibility.disable', {});
|
|
293
454
|
}
|
|
294
455
|
}
|
|
456
|
+
/**
|
|
457
|
+
* Why an element has no node in the accessibility tree (e.g. it is not
|
|
458
|
+
* rendered, aria-hidden, or a decorative image with `alt=""`).
|
|
459
|
+
*
|
|
460
|
+
* @param target - Node reference
|
|
461
|
+
* @returns Chrome's reasons in plain words (empty if unknown)
|
|
462
|
+
*/
|
|
463
|
+
export async function a11yIgnoredReasons(target) {
|
|
464
|
+
await callCDP('Accessibility.enable', {});
|
|
465
|
+
try {
|
|
466
|
+
const response = await callCDP('Accessibility.getPartialAXTree', {
|
|
467
|
+
...target,
|
|
468
|
+
fetchRelatives: false,
|
|
469
|
+
});
|
|
470
|
+
const nodes = response.data?.result?.nodes;
|
|
471
|
+
return (nodes?.[0]?.ignoredReasons ?? []).map((reason) => IGNORED_REASONS[reason.name] ?? reason.name);
|
|
472
|
+
}
|
|
473
|
+
finally {
|
|
474
|
+
await callCDP('Accessibility.disable', {});
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
/** Chrome's ignored reasons in plain words */
|
|
478
|
+
const IGNORED_REASONS = {
|
|
479
|
+
notRendered: 'not rendered (display: none or hidden)',
|
|
480
|
+
notVisible: 'not visible',
|
|
481
|
+
ariaHiddenElement: 'aria-hidden="true"',
|
|
482
|
+
ariaHiddenSubtree: 'inside an aria-hidden element',
|
|
483
|
+
presentationalRole: 'presentational (e.g. an image with alt="")',
|
|
484
|
+
emptyAlt: 'an image with alt=""',
|
|
485
|
+
inertElement: 'inert',
|
|
486
|
+
inertSubtree: 'inside an inert element',
|
|
487
|
+
activeModalDialog: 'outside the open modal dialog',
|
|
488
|
+
probablyPresentational: 'probably decorative',
|
|
489
|
+
uninteresting: 'has no role or name',
|
|
490
|
+
labelFor: 'a label (its text names another element)',
|
|
491
|
+
};
|
|
295
492
|
//# sourceMappingURL=a11y.js.map
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Attach to the page's child targets: out-of-process (cross-origin) iframes
|
|
3
|
+
* and workers.
|
|
4
|
+
*
|
|
5
|
+
* Their console, log and network events do not reach the page's own session.
|
|
6
|
+
* With flattened auto-attach, each child gets a session on the same
|
|
7
|
+
* connection; its events arrive with that session id, and commands are sent
|
|
8
|
+
* to it by id. Children start paused, so every collector can enable its
|
|
9
|
+
* domains before the child loads anything; they are resumed afterwards.
|
|
10
|
+
*/
|
|
11
|
+
import type { CDPConnection } from '../connection/cdp.js';
|
|
12
|
+
import type { CleanupFunction } from '../types.js';
|
|
13
|
+
/** Enables what a collector needs on a child session (e.g. `Runtime.enable`) */
|
|
14
|
+
type ChildSetup = (sessionId: string) => Promise<void>;
|
|
15
|
+
/**
|
|
16
|
+
* Attach to child targets of the page and run `setup` on each one's session
|
|
17
|
+
* before it starts. Children that are already attached (e.g. when another
|
|
18
|
+
* collector registered first) get the setup right away.
|
|
19
|
+
*
|
|
20
|
+
* @param cdp - CDP connection to the page
|
|
21
|
+
* @param setup - Enables domains on a child session (e.g. `Runtime.enable`)
|
|
22
|
+
* @returns Cleanup function that stops running `setup` for new targets
|
|
23
|
+
*/
|
|
24
|
+
export declare function attachChildTargets(cdp: CDPConnection, setup: ChildSetup): Promise<CleanupFunction>;
|
|
25
|
+
/**
|
|
26
|
+
* Session of an attached child target (e.g. an out-of-process iframe) on the
|
|
27
|
+
* connection. Its commands are answered even while the target's scripts keep
|
|
28
|
+
* it busy, unlike those of a session attached afterwards.
|
|
29
|
+
*
|
|
30
|
+
* @param cdp - CDP connection to the page
|
|
31
|
+
* @param targetId - Target id (an iframe target's id is its frame id)
|
|
32
|
+
* @returns The session, undefined when the target is not attached
|
|
33
|
+
*/
|
|
34
|
+
export declare function attachedSessionOf(cdp: CDPConnection, targetId: string): string | undefined;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=attachedTargets.d.ts.map
|