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.
Files changed (1172) hide show
  1. package/README.md +17 -6
  2. package/dist/cdp/protocol.d.ts +1 -1
  3. package/dist/cdp/protocol.js +1 -1
  4. package/dist/cdp/schema.d.ts +14 -1
  5. package/dist/cdp/schema.js +61 -7
  6. package/dist/commands/cdp.js +76 -23
  7. package/dist/commands/cleanup.d.ts +11 -0
  8. package/dist/commands/cleanup.js +167 -55
  9. package/dist/commands/console.d.ts +38 -2
  10. package/dist/commands/console.js +147 -62
  11. package/dist/commands/details.js +15 -4
  12. package/dist/commands/dom/DomElementResolver.d.ts +34 -72
  13. package/dist/commands/dom/DomElementResolver.js +93 -166
  14. package/dist/commands/dom/a11y.d.ts +10 -0
  15. package/dist/commands/dom/a11y.js +75 -34
  16. package/dist/commands/dom/eval.d.ts +15 -0
  17. package/dist/commands/dom/eval.js +68 -0
  18. package/dist/commands/dom/form.js +109 -199
  19. package/dist/commands/dom/formInteraction.d.ts +6 -1
  20. package/dist/commands/dom/formInteraction.js +319 -362
  21. package/dist/commands/dom/formSummary.d.ts +49 -0
  22. package/dist/commands/dom/formSummary.js +180 -0
  23. package/dist/commands/dom/frames.d.ts +13 -0
  24. package/dist/commands/dom/frames.js +43 -0
  25. package/dist/commands/dom/get.d.ts +21 -0
  26. package/dist/commands/dom/get.js +151 -0
  27. package/dist/commands/dom/helpers/index.d.ts +11 -0
  28. package/dist/commands/dom/helpers/index.js +10 -0
  29. package/dist/commands/dom/helpers/query.d.ts +105 -0
  30. package/dist/commands/dom/helpers/query.js +604 -0
  31. package/dist/commands/dom/helpers/runElementCommand.d.ts +64 -0
  32. package/dist/commands/dom/helpers/runElementCommand.js +130 -0
  33. package/dist/commands/dom/helpers/screenshot.d.ts +33 -0
  34. package/dist/commands/dom/helpers/screenshot.js +489 -0
  35. package/dist/commands/dom/index.d.ts +17 -3
  36. package/dist/commands/dom/index.js +61 -517
  37. package/dist/commands/dom/layout.d.ts +14 -0
  38. package/dist/commands/dom/layout.js +54 -0
  39. package/dist/commands/dom/listeners.d.ts +20 -0
  40. package/dist/commands/dom/listeners.js +64 -0
  41. package/dist/commands/dom/query.d.ts +14 -0
  42. package/dist/commands/dom/query.js +35 -0
  43. package/dist/commands/dom/screenshot.d.ts +31 -0
  44. package/dist/commands/dom/screenshot.js +272 -0
  45. package/dist/commands/dom/semanticUtils.d.ts +37 -0
  46. package/dist/commands/dom/semanticUtils.js +98 -0
  47. package/dist/commands/dom/wait.d.ts +13 -0
  48. package/dist/commands/dom/wait.js +83 -0
  49. package/dist/commands/helpJson.d.ts +4 -2
  50. package/dist/commands/helpJson.js +12 -32
  51. package/dist/commands/helpTopic.d.ts +32 -0
  52. package/dist/commands/helpTopic.js +58 -0
  53. package/dist/commands/network/har.js +50 -24
  54. package/dist/commands/network/list.js +97 -71
  55. package/dist/commands/network/shared.d.ts +9 -15
  56. package/dist/commands/network/shared.js +30 -51
  57. package/dist/commands/optionBehaviors.d.ts +1 -9
  58. package/dist/commands/optionBehaviors.js +148 -36
  59. package/dist/commands/page.d.ts +12 -0
  60. package/dist/commands/page.js +148 -0
  61. package/dist/commands/peek.js +64 -57
  62. package/dist/commands/sessions.d.ts +8 -0
  63. package/dist/commands/sessions.js +19 -0
  64. package/dist/commands/shared/CommandRunner.d.ts +18 -1
  65. package/dist/commands/shared/CommandRunner.js +83 -26
  66. package/dist/commands/shared/commonOptions.d.ts +10 -0
  67. package/dist/commands/shared/commonOptions.js +12 -0
  68. package/dist/commands/shared/daemonErrorHandler.d.ts +9 -0
  69. package/dist/commands/shared/daemonErrorHandler.js +31 -11
  70. package/dist/commands/shared/dataFetcher.d.ts +33 -10
  71. package/dist/commands/shared/dataFetcher.js +57 -20
  72. package/dist/commands/shared/followMode.d.ts +21 -4
  73. package/dist/commands/shared/followMode.js +34 -12
  74. package/dist/commands/shared/handleValidationError.d.ts +14 -0
  75. package/dist/commands/shared/handleValidationError.js +48 -0
  76. package/dist/commands/shared/optionTypes.d.ts +80 -25
  77. package/dist/commands/shared/outputFile.d.ts +33 -0
  78. package/dist/commands/shared/outputFile.js +78 -0
  79. package/dist/commands/shared/startHelpers.d.ts +5 -8
  80. package/dist/commands/shared/startHelpers.js +235 -37
  81. package/dist/commands/shared/validation.d.ts +43 -0
  82. package/dist/commands/shared/validation.js +102 -22
  83. package/dist/commands/start.d.ts +91 -1
  84. package/dist/commands/start.js +328 -40
  85. package/dist/commands/status.js +76 -17
  86. package/dist/commands/stop.js +21 -30
  87. package/dist/commands/tail.js +22 -44
  88. package/dist/commands/types.d.ts +2 -0
  89. package/dist/commands.js +4 -0
  90. package/dist/connection/cdp.d.ts +12 -6
  91. package/dist/connection/cdp.js +59 -16
  92. package/dist/connection/chromeIdentity.d.ts +65 -0
  93. package/dist/connection/chromeIdentity.js +143 -0
  94. package/dist/connection/diagnostics.d.ts +0 -9
  95. package/dist/connection/diagnostics.js +0 -13
  96. package/dist/connection/errors.d.ts +36 -1
  97. package/dist/connection/errors.js +43 -3
  98. package/dist/connection/handlers.d.ts +5 -5
  99. package/dist/connection/handlers.js +1 -1
  100. package/dist/connection/inFlightRequests.d.ts +33 -0
  101. package/dist/connection/inFlightRequests.js +52 -0
  102. package/dist/connection/launcher/binaryResolver.js +20 -7
  103. package/dist/connection/launcher/flagsBuilder.d.ts +24 -54
  104. package/dist/connection/launcher/flagsBuilder.js +65 -40
  105. package/dist/connection/launcher/preferencesLoader.js +27 -8
  106. package/dist/connection/launcher/profilePreferences.d.ts +47 -0
  107. package/dist/connection/launcher/profilePreferences.js +151 -0
  108. package/dist/connection/launcher.d.ts +22 -1
  109. package/dist/connection/launcher.js +89 -44
  110. package/dist/connection/pageReadiness.d.ts +5 -6
  111. package/dist/connection/pageReadiness.js +63 -120
  112. package/dist/connection/portReservation.d.ts +20 -0
  113. package/dist/connection/portReservation.js +52 -2
  114. package/dist/connection/startupExit.d.ts +45 -0
  115. package/dist/connection/startupExit.js +116 -0
  116. package/dist/connection/typed-cdp.d.ts +8 -6
  117. package/dist/connection/typed-cdp.js +5 -3
  118. package/dist/connection/types.d.ts +3 -0
  119. package/dist/constants.d.ts +27 -24
  120. package/dist/constants.js +37 -27
  121. package/dist/daemon/SessionController.d.ts +125 -0
  122. package/dist/daemon/SessionController.js +488 -0
  123. package/dist/daemon/errors.d.ts +15 -19
  124. package/dist/daemon/errors.js +18 -21
  125. package/dist/daemon/ipcServer.d.ts +44 -30
  126. package/dist/daemon/ipcServer.js +164 -132
  127. package/dist/daemon/launcher.d.ts +14 -21
  128. package/dist/daemon/launcher.js +94 -102
  129. package/dist/daemon/messages.d.ts +29 -0
  130. package/dist/daemon/messages.js +35 -0
  131. package/dist/daemon/patternDefinitions.d.ts +1 -1
  132. package/dist/daemon/patternDefinitions.js +3 -2
  133. package/dist/daemon/patternDetector.d.ts +13 -29
  134. package/dist/daemon/patternDetector.js +26 -47
  135. package/dist/daemon/server/SocketServer.d.ts +56 -2
  136. package/dist/daemon/server/SocketServer.js +130 -30
  137. package/dist/daemon/session/Session.d.ts +150 -0
  138. package/dist/daemon/session/Session.js +337 -0
  139. package/dist/daemon/session/TelemetryStore.d.ts +30 -0
  140. package/dist/daemon/session/TelemetryStore.js +44 -0
  141. package/dist/daemon/session/cdpSetup.d.ts +47 -0
  142. package/dist/daemon/session/cdpSetup.js +94 -0
  143. package/dist/daemon/session/chromeConnection.d.ts +47 -0
  144. package/dist/daemon/session/chromeConnection.js +215 -0
  145. package/dist/daemon/{worker → session}/collectors.d.ts +3 -3
  146. package/dist/daemon/{worker → session}/collectors.js +3 -3
  147. package/dist/daemon/session/commandRegistry.js +435 -0
  148. package/dist/daemon/session/interactions.d.ts +53 -0
  149. package/dist/daemon/session/interactions.js +71 -0
  150. package/dist/daemon/{worker → session}/plugins.d.ts +3 -3
  151. package/dist/daemon/session/plugins.js +219 -0
  152. package/dist/daemon/session/targetMismatch.d.ts +34 -0
  153. package/dist/daemon/session/targetMismatch.js +83 -0
  154. package/dist/daemon/session/teardown.d.ts +27 -0
  155. package/dist/daemon/session/teardown.js +128 -0
  156. package/dist/daemon/session/triggeredRequests.d.ts +67 -0
  157. package/dist/daemon/session/triggeredRequests.js +157 -0
  158. package/dist/daemon/session/types.d.ts +19 -0
  159. package/dist/daemon.d.ts +3 -4
  160. package/dist/daemon.js +19149 -24
  161. package/dist/{ui/errors → errors}/CommandError.js +1 -1
  162. package/dist/{ui/errors → errors}/index.d.ts +2 -0
  163. package/dist/errors/issues.d.ts +16 -0
  164. package/dist/errors/issues.js +11 -0
  165. package/dist/errors/messages.d.ts +908 -0
  166. package/dist/errors/messages.js +1653 -0
  167. package/dist/errors/notices.d.ts +30 -0
  168. package/dist/errors/notices.js +11 -0
  169. package/dist/{ui/errors → errors}/utils.js +1 -1
  170. package/dist/index.js +18828 -168
  171. package/dist/ipc/client.d.ts +56 -9
  172. package/dist/ipc/client.js +115 -19
  173. package/dist/ipc/index.d.ts +2 -2
  174. package/dist/ipc/index.js +2 -2
  175. package/dist/ipc/protocol/commands.d.ts +305 -59
  176. package/dist/ipc/protocol/commands.js +29 -21
  177. package/dist/ipc/protocol/domTypes.d.ts +487 -0
  178. package/dist/ipc/protocol/domTypes.js +10 -0
  179. package/dist/ipc/protocol/guards.d.ts +4 -4
  180. package/dist/ipc/protocol/guards.js +4 -4
  181. package/dist/ipc/protocol/messages.d.ts +9 -33
  182. package/dist/ipc/protocol/messages.js +1 -1
  183. package/dist/ipc/session/errors.d.ts +10 -2
  184. package/dist/ipc/session/errors.js +10 -2
  185. package/dist/ipc/session/lifecycle.d.ts +28 -23
  186. package/dist/ipc/session/queries.d.ts +26 -5
  187. package/dist/ipc/session/types.d.ts +6 -1
  188. package/dist/ipc/session/types.js +1 -1
  189. package/dist/ipc/transport/IPCError.d.ts +3 -3
  190. package/dist/ipc/transport/IPCError.js +3 -3
  191. package/dist/ipc/transport/index.d.ts +8 -1
  192. package/dist/ipc/transport/index.js +8 -3
  193. package/dist/ipc/transport/jsonl.d.ts +28 -2
  194. package/dist/ipc/transport/jsonl.js +57 -10
  195. package/dist/ipc/utils/errors.d.ts +4 -2
  196. package/dist/ipc/utils/errors.js +10 -4
  197. package/dist/ipc/utils/index.d.ts +0 -1
  198. package/dist/ipc/utils/index.js +0 -1
  199. package/dist/ipc/utils/responseValidator.d.ts +5 -1
  200. package/dist/ipc/utils/responseValidator.js +7 -3
  201. package/dist/runtime/dom/actionEffects.d.ts +106 -0
  202. package/dist/runtime/dom/actionEffects.js +256 -0
  203. package/dist/runtime/dom/actionEffectsScripts.d.ts +52 -0
  204. package/dist/runtime/dom/actionEffectsScripts.js +234 -0
  205. package/dist/runtime/dom/elementGeometry.d.ts +170 -0
  206. package/dist/runtime/dom/elementGeometry.js +553 -0
  207. package/dist/runtime/dom/elementInfo.d.ts +77 -0
  208. package/dist/runtime/dom/elementInfo.js +191 -0
  209. package/dist/runtime/dom/evalHelpers.d.ts +121 -0
  210. package/dist/runtime/dom/evalHelpers.js +516 -0
  211. package/dist/runtime/dom/eventListeners.d.ts +24 -0
  212. package/dist/runtime/dom/eventListeners.js +379 -0
  213. package/dist/runtime/dom/formDiscovery.d.ts +26 -0
  214. package/dist/{commands → runtime}/dom/formDiscovery.js +163 -24
  215. package/dist/runtime/dom/formFillHelpers/fill.d.ts +39 -0
  216. package/dist/runtime/dom/formFillHelpers/fill.js +414 -0
  217. package/dist/runtime/dom/formFillHelpers/index.d.ts +17 -0
  218. package/dist/runtime/dom/formFillHelpers/index.js +17 -0
  219. package/dist/runtime/dom/formFillHelpers/pressKey.d.ts +28 -0
  220. package/dist/runtime/dom/formFillHelpers/pressKey.js +206 -0
  221. package/dist/runtime/dom/formFillHelpers/scroll.d.ts +27 -0
  222. package/dist/runtime/dom/formFillHelpers/scroll.js +230 -0
  223. package/dist/runtime/dom/formFillHelpers/shared.d.ts +60 -0
  224. package/dist/runtime/dom/formFillHelpers/shared.js +124 -0
  225. package/dist/runtime/dom/formFillHelpers/stability.d.ts +28 -0
  226. package/dist/runtime/dom/formFillHelpers/stability.js +71 -0
  227. package/dist/runtime/dom/formSubmitHelpers.d.ts +32 -0
  228. package/dist/runtime/dom/formSubmitHelpers.js +326 -0
  229. package/dist/runtime/dom/formTypes.d.ts +8 -0
  230. package/dist/runtime/dom/frameLayout.d.ts +60 -0
  231. package/dist/runtime/dom/frameLayout.js +140 -0
  232. package/dist/runtime/dom/frameOrigin.d.ts +50 -0
  233. package/dist/runtime/dom/frameOrigin.js +62 -0
  234. package/dist/runtime/dom/frameScopedConnection.d.ts +92 -0
  235. package/dist/runtime/dom/frameScopedConnection.js +252 -0
  236. package/dist/runtime/dom/frameSelection.d.ts +27 -0
  237. package/dist/runtime/dom/frameSelection.js +66 -0
  238. package/dist/runtime/dom/frames.d.ts +61 -0
  239. package/dist/runtime/dom/frames.js +444 -0
  240. package/dist/runtime/dom/keyMapping.d.ts +103 -0
  241. package/dist/runtime/dom/keyMapping.js +232 -0
  242. package/dist/runtime/dom/layout.d.ts +67 -0
  243. package/dist/runtime/dom/layout.js +333 -0
  244. package/dist/runtime/dom/listenerPageScripts.d.ts +66 -0
  245. package/dist/runtime/dom/listenerPageScripts.js +279 -0
  246. package/dist/runtime/dom/listenerSummary.d.ts +193 -0
  247. package/dist/runtime/dom/listenerSummary.js +472 -0
  248. package/dist/runtime/dom/pageActivity.d.ts +41 -0
  249. package/dist/runtime/dom/pageActivity.js +123 -0
  250. package/dist/runtime/dom/reactEventHelpers.d.ts +117 -0
  251. package/dist/runtime/dom/reactEventHelpers.js +641 -0
  252. package/dist/runtime/dom/targetNode.d.ts +131 -0
  253. package/dist/runtime/dom/targetNode.js +370 -0
  254. package/dist/runtime/dom/wait.d.ts +25 -0
  255. package/dist/runtime/dom/wait.js +199 -0
  256. package/dist/runtime/dom/waitCondition.d.ts +71 -0
  257. package/dist/runtime/dom/waitCondition.js +75 -0
  258. package/dist/runtime/page/emulation.d.ts +51 -0
  259. package/dist/runtime/page/emulation.js +80 -0
  260. package/dist/runtime/page/loadingState.d.ts +36 -0
  261. package/dist/runtime/page/loadingState.js +86 -0
  262. package/dist/runtime/page/navigation.d.ts +78 -0
  263. package/dist/runtime/page/navigation.js +285 -0
  264. package/dist/session/QueryCacheManager.d.ts +36 -83
  265. package/dist/session/QueryCacheManager.js +63 -133
  266. package/dist/session/chrome.d.ts +21 -16
  267. package/dist/session/chrome.js +28 -44
  268. package/dist/session/chromeOwners.d.ts +34 -0
  269. package/dist/session/chromeOwners.js +51 -0
  270. package/dist/session/cleanup/staleSession.d.ts +59 -0
  271. package/dist/session/cleanup/staleSession.js +135 -0
  272. package/dist/session/cleanup/userCommands.d.ts +36 -0
  273. package/dist/session/cleanup/userCommands.js +93 -0
  274. package/dist/session/daemonSocket.d.ts +25 -0
  275. package/dist/session/daemonSocket.js +40 -0
  276. package/dist/session/lastSession.d.ts +29 -0
  277. package/dist/session/lastSession.js +45 -0
  278. package/dist/session/metadata.d.ts +7 -1
  279. package/dist/session/metadata.js +2 -1
  280. package/dist/session/paths.d.ts +79 -7
  281. package/dist/session/paths.js +113 -9
  282. package/dist/session/pid.d.ts +9 -38
  283. package/dist/session/pid.js +14 -64
  284. package/dist/session/port.d.ts +31 -12
  285. package/dist/session/port.js +56 -59
  286. package/dist/session/portClaims.d.ts +66 -0
  287. package/dist/session/portClaims.js +284 -0
  288. package/dist/session/sessionList.d.ts +58 -0
  289. package/dist/session/sessionList.js +199 -0
  290. package/dist/session/sessionName.d.ts +46 -0
  291. package/dist/session/sessionName.js +97 -0
  292. package/dist/telemetry/a11y.d.ts +31 -20
  293. package/dist/telemetry/a11y.js +304 -107
  294. package/dist/telemetry/attachedTargets.d.ts +36 -0
  295. package/dist/telemetry/attachedTargets.js +163 -0
  296. package/dist/telemetry/console.d.ts +21 -4
  297. package/dist/telemetry/console.js +122 -11
  298. package/dist/telemetry/dialogs.d.ts +4 -2
  299. package/dist/telemetry/dialogs.js +3 -1
  300. package/dist/telemetry/dom.d.ts +1 -11
  301. package/dist/telemetry/dom.js +0 -102
  302. package/dist/telemetry/filterDsl.d.ts +9 -1
  303. package/dist/telemetry/filterDsl.js +101 -31
  304. package/dist/telemetry/filterPresets.js +12 -2
  305. package/dist/telemetry/filters.d.ts +1 -1
  306. package/dist/telemetry/filters.js +38 -3
  307. package/dist/telemetry/har/builder.js +190 -160
  308. package/dist/telemetry/har/types.d.ts +21 -4
  309. package/dist/telemetry/navigation.d.ts +13 -29
  310. package/dist/telemetry/navigation.js +12 -46
  311. package/dist/telemetry/network.d.ts +37 -1
  312. package/dist/telemetry/network.js +343 -130
  313. package/dist/telemetry/networkExtraInfo.d.ts +106 -0
  314. package/dist/telemetry/networkExtraInfo.js +241 -0
  315. package/dist/telemetry/objectExpander.d.ts +14 -5
  316. package/dist/telemetry/objectExpander.js +13 -6
  317. package/dist/telemetry/remoteObject.d.ts +10 -2
  318. package/dist/telemetry/remoteObject.js +59 -2
  319. package/dist/telemetry/remoteObjectUtils.js +22 -3
  320. package/dist/telemetry/requestKinds.d.ts +32 -0
  321. package/dist/telemetry/requestKinds.js +61 -0
  322. package/dist/telemetry/requestState.d.ts +31 -0
  323. package/dist/telemetry/requestState.js +38 -0
  324. package/dist/types.d.ts +143 -46
  325. package/dist/types.js +1 -33
  326. package/dist/ui/OutputBuilder.d.ts +17 -14
  327. package/dist/ui/OutputBuilder.js +18 -87
  328. package/dist/ui/formatters/a11y.js +75 -9
  329. package/dist/ui/formatters/console/chronological.d.ts +22 -0
  330. package/dist/ui/formatters/console/chronological.js +71 -0
  331. package/dist/ui/formatters/console/follow.d.ts +18 -0
  332. package/dist/ui/formatters/console/follow.js +36 -0
  333. package/dist/ui/formatters/console/json.d.ts +21 -0
  334. package/dist/ui/formatters/console/json.js +52 -0
  335. package/dist/ui/formatters/console/shared.d.ts +148 -0
  336. package/dist/ui/formatters/console/shared.js +158 -0
  337. package/dist/ui/formatters/console/summarize.d.ts +10 -0
  338. package/dist/ui/formatters/console/summarize.js +63 -0
  339. package/dist/ui/formatters/console.d.ts +16 -137
  340. package/dist/ui/formatters/console.js +17 -418
  341. package/dist/ui/formatters/cookies.js +3 -3
  342. package/dist/ui/formatters/details.d.ts +5 -2
  343. package/dist/ui/formatters/details.js +184 -24
  344. package/dist/ui/formatters/dom.d.ts +42 -9
  345. package/dist/ui/formatters/dom.js +99 -34
  346. package/dist/ui/formatters/form.js +62 -72
  347. package/dist/ui/formatters/helpFormatters.js +5 -4
  348. package/dist/ui/formatters/layout.d.ts +31 -0
  349. package/dist/ui/formatters/layout.js +53 -0
  350. package/dist/ui/formatters/listeners.d.ts +25 -0
  351. package/dist/ui/formatters/listeners.js +160 -0
  352. package/dist/ui/formatters/networkHeaders.d.ts +3 -3
  353. package/dist/ui/formatters/networkHeaders.js +20 -4
  354. package/dist/ui/formatters/networkList.d.ts +14 -2
  355. package/dist/ui/formatters/networkList.js +80 -35
  356. package/dist/ui/formatters/preview.d.ts +21 -3
  357. package/dist/ui/formatters/preview.js +55 -73
  358. package/dist/ui/formatters/requestStatus.d.ts +18 -0
  359. package/dist/ui/formatters/requestStatus.js +27 -0
  360. package/dist/ui/formatters/semantic.d.ts +1 -1
  361. package/dist/ui/formatters/semantic.js +1 -1
  362. package/dist/ui/formatters/sessions.d.ts +12 -0
  363. package/dist/ui/formatters/sessions.js +40 -0
  364. package/dist/ui/formatters/status.d.ts +44 -7
  365. package/dist/ui/formatters/status.js +89 -28
  366. package/dist/ui/formatters/triggeredRequests.d.ts +36 -0
  367. package/dist/ui/formatters/triggeredRequests.js +65 -0
  368. package/dist/ui/formatting.d.ts +45 -0
  369. package/dist/ui/formatting.js +115 -24
  370. package/dist/ui/logging/logger.d.ts +1 -1
  371. package/dist/ui/messages/chrome.d.ts +41 -97
  372. package/dist/ui/messages/chrome.js +110 -132
  373. package/dist/ui/messages/commands.d.ts +495 -3
  374. package/dist/ui/messages/commands.js +796 -6
  375. package/dist/ui/messages/consoleMessages.d.ts +7 -3
  376. package/dist/ui/messages/consoleMessages.js +13 -4
  377. package/dist/ui/messages/hints.d.ts +9 -15
  378. package/dist/ui/messages/hints.js +18 -16
  379. package/dist/ui/messages/networkMessages.d.ts +0 -6
  380. package/dist/ui/messages/networkMessages.js +0 -8
  381. package/dist/ui/messages/preview.js +5 -4
  382. package/dist/ui/messages/session.d.ts +37 -21
  383. package/dist/ui/messages/session.js +59 -26
  384. package/dist/ui/messages/sessionCommand.d.ts +43 -0
  385. package/dist/ui/messages/sessionCommand.js +52 -0
  386. package/dist/ui/messages/validation.d.ts +15 -26
  387. package/dist/ui/messages/validation.js +33 -38
  388. package/dist/utils/async.d.ts +8 -0
  389. package/dist/utils/async.js +19 -0
  390. package/dist/utils/atomicFile.js +1 -1
  391. package/dist/utils/decisionTrees.js +1 -1
  392. package/dist/utils/errorMapping.js +15 -4
  393. package/dist/utils/errors.d.ts +13 -0
  394. package/dist/utils/errors.js +21 -0
  395. package/dist/utils/exitCodes.d.ts +5 -0
  396. package/dist/utils/exitCodes.js +36 -2
  397. package/dist/utils/http.d.ts +56 -4
  398. package/dist/utils/http.js +78 -6
  399. package/dist/utils/packageRoot.d.ts +12 -0
  400. package/dist/utils/packageRoot.js +33 -0
  401. package/dist/utils/process.d.ts +10 -0
  402. package/dist/utils/process.js +35 -3
  403. package/dist/utils/selectorFilters.d.ts +73 -0
  404. package/dist/utils/selectorFilters.js +438 -0
  405. package/dist/utils/shellDetection.d.ts +8 -2
  406. package/dist/utils/shellDetection.js +120 -33
  407. package/dist/utils/suggestions.d.ts +26 -0
  408. package/dist/utils/suggestions.js +74 -1
  409. package/dist/utils/taskMappings.js +17 -2
  410. package/dist/utils/typeGuards.js +2 -2
  411. package/dist/utils/url.d.ts +23 -5
  412. package/dist/utils/url.js +115 -52
  413. package/dist/utils/validation.d.ts +15 -93
  414. package/dist/utils/validation.js +10 -118
  415. package/dist/utils/version.js +3 -5
  416. package/package.json +39 -30
  417. package/dist/__testfixtures__/cdpMessages.d.ts +0 -43
  418. package/dist/__testfixtures__/cdpMessages.d.ts.map +0 -1
  419. package/dist/__testfixtures__/cdpMessages.js +0 -118
  420. package/dist/__testfixtures__/cdpMessages.js.map +0 -1
  421. package/dist/__testfixtures__/connectionTargets.d.ts +0 -21
  422. package/dist/__testfixtures__/connectionTargets.d.ts.map +0 -1
  423. package/dist/__testfixtures__/connectionTargets.js +0 -59
  424. package/dist/__testfixtures__/connectionTargets.js.map +0 -1
  425. package/dist/__tests__/fixtures/schema-v0.2.1.golden.json +0 -47
  426. package/dist/__tests__/integration/session-files.integration.test.d.ts +0 -2
  427. package/dist/__tests__/integration/session-files.integration.test.d.ts.map +0 -1
  428. package/dist/__tests__/integration/session-files.integration.test.js +0 -66
  429. package/dist/__tests__/integration/session-files.integration.test.js.map +0 -1
  430. package/dist/__tests__/schema.contract.test.d.ts +0 -19
  431. package/dist/__tests__/schema.contract.test.d.ts.map +0 -1
  432. package/dist/__tests__/schema.contract.test.js +0 -236
  433. package/dist/__tests__/schema.contract.test.js.map +0 -1
  434. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts +0 -8
  435. package/dist/__tests__/smoke/error-handling.smoke.test.d.ts.map +0 -1
  436. package/dist/__tests__/smoke/error-handling.smoke.test.js +0 -66
  437. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +0 -1
  438. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts +0 -8
  439. package/dist/__tests__/smoke/session-lifecycle.smoke.test.d.ts.map +0 -1
  440. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +0 -112
  441. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +0 -1
  442. package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts +0 -12
  443. package/dist/__tests__/telemetry/filterDsl.unit.test.d.ts.map +0 -1
  444. package/dist/__tests__/telemetry/filterDsl.unit.test.js +0 -374
  445. package/dist/__tests__/telemetry/filterDsl.unit.test.js.map +0 -1
  446. package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts +0 -10
  447. package/dist/__tests__/telemetry/filterPresets.unit.test.d.ts.map +0 -1
  448. package/dist/__tests__/telemetry/filterPresets.unit.test.js +0 -89
  449. package/dist/__tests__/telemetry/filterPresets.unit.test.js.map +0 -1
  450. package/dist/__testutils__/FakeClock.d.ts +0 -67
  451. package/dist/__testutils__/FakeClock.d.ts.map +0 -1
  452. package/dist/__testutils__/FakeClock.js +0 -132
  453. package/dist/__testutils__/FakeClock.js.map +0 -1
  454. package/dist/__testutils__/FakeWebSocket.d.ts +0 -106
  455. package/dist/__testutils__/FakeWebSocket.d.ts.map +0 -1
  456. package/dist/__testutils__/FakeWebSocket.js +0 -213
  457. package/dist/__testutils__/FakeWebSocket.js.map +0 -1
  458. package/dist/__testutils__/assertions.d.ts +0 -33
  459. package/dist/__testutils__/assertions.d.ts.map +0 -1
  460. package/dist/__testutils__/assertions.js +0 -57
  461. package/dist/__testutils__/assertions.js.map +0 -1
  462. package/dist/__testutils__/commandRunner.d.ts +0 -45
  463. package/dist/__testutils__/commandRunner.d.ts.map +0 -1
  464. package/dist/__testutils__/commandRunner.js +0 -108
  465. package/dist/__testutils__/commandRunner.js.map +0 -1
  466. package/dist/__testutils__/daemonHelpers.d.ts +0 -93
  467. package/dist/__testutils__/daemonHelpers.d.ts.map +0 -1
  468. package/dist/__testutils__/daemonHelpers.js +0 -255
  469. package/dist/__testutils__/daemonHelpers.js.map +0 -1
  470. package/dist/__testutils__/index.d.ts +0 -16
  471. package/dist/__testutils__/index.d.ts.map +0 -1
  472. package/dist/__testutils__/index.js +0 -16
  473. package/dist/__testutils__/index.js.map +0 -1
  474. package/dist/__testutils__/testCleanup.d.ts +0 -45
  475. package/dist/__testutils__/testCleanup.d.ts.map +0 -1
  476. package/dist/__testutils__/testCleanup.js +0 -87
  477. package/dist/__testutils__/testCleanup.js.map +0 -1
  478. package/dist/__testutils__/testClock.d.ts +0 -28
  479. package/dist/__testutils__/testClock.d.ts.map +0 -1
  480. package/dist/__testutils__/testClock.js +0 -81
  481. package/dist/__testutils__/testClock.js.map +0 -1
  482. package/dist/__testutils__/testFixtures.d.ts +0 -15
  483. package/dist/__testutils__/testFixtures.d.ts.map +0 -1
  484. package/dist/__testutils__/testFixtures.js +0 -23
  485. package/dist/__testutils__/testFixtures.js.map +0 -1
  486. package/dist/__testutils__/testHome.d.ts +0 -26
  487. package/dist/__testutils__/testHome.d.ts.map +0 -1
  488. package/dist/__testutils__/testHome.js +0 -57
  489. package/dist/__testutils__/testHome.js.map +0 -1
  490. package/dist/__testutils__/testProcess.d.ts +0 -46
  491. package/dist/__testutils__/testProcess.d.ts.map +0 -1
  492. package/dist/__testutils__/testProcess.js +0 -85
  493. package/dist/__testutils__/testProcess.js.map +0 -1
  494. package/dist/cdp/protocol.d.ts.map +0 -1
  495. package/dist/cdp/protocol.js.map +0 -1
  496. package/dist/cdp/schema.d.ts.map +0 -1
  497. package/dist/cdp/schema.js.map +0 -1
  498. package/dist/cdp/types.d.ts.map +0 -1
  499. package/dist/cdp/types.js.map +0 -1
  500. package/dist/commands/__tests__/cdp.contract.test.d.ts +0 -24
  501. package/dist/commands/__tests__/cdp.contract.test.d.ts.map +0 -1
  502. package/dist/commands/__tests__/cdp.contract.test.js +0 -466
  503. package/dist/commands/__tests__/cdp.contract.test.js.map +0 -1
  504. package/dist/commands/__tests__/console.contract.test.d.ts +0 -9
  505. package/dist/commands/__tests__/console.contract.test.d.ts.map +0 -1
  506. package/dist/commands/__tests__/console.contract.test.js +0 -118
  507. package/dist/commands/__tests__/console.contract.test.js.map +0 -1
  508. package/dist/commands/__tests__/domEval.contract.test.d.ts +0 -17
  509. package/dist/commands/__tests__/domEval.contract.test.d.ts.map +0 -1
  510. package/dist/commands/__tests__/domEval.contract.test.js +0 -235
  511. package/dist/commands/__tests__/domEval.contract.test.js.map +0 -1
  512. package/dist/commands/__tests__/helpJson.contract.test.d.ts +0 -12
  513. package/dist/commands/__tests__/helpJson.contract.test.d.ts.map +0 -1
  514. package/dist/commands/__tests__/helpJson.contract.test.js +0 -121
  515. package/dist/commands/__tests__/helpJson.contract.test.js.map +0 -1
  516. package/dist/commands/__tests__/machineReadableHelp.contract.test.d.ts +0 -12
  517. package/dist/commands/__tests__/machineReadableHelp.contract.test.d.ts.map +0 -1
  518. package/dist/commands/__tests__/machineReadableHelp.contract.test.js +0 -121
  519. package/dist/commands/__tests__/machineReadableHelp.contract.test.js.map +0 -1
  520. package/dist/commands/cdp.d.ts.map +0 -1
  521. package/dist/commands/cdp.js.map +0 -1
  522. package/dist/commands/cleanup.d.ts.map +0 -1
  523. package/dist/commands/cleanup.js.map +0 -1
  524. package/dist/commands/console.d.ts.map +0 -1
  525. package/dist/commands/console.js.map +0 -1
  526. package/dist/commands/details.d.ts.map +0 -1
  527. package/dist/commands/details.js.map +0 -1
  528. package/dist/commands/dom/DomElementResolver.d.ts.map +0 -1
  529. package/dist/commands/dom/DomElementResolver.js.map +0 -1
  530. package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts +0 -2
  531. package/dist/commands/dom/__tests__/screenshotResize.unit.test.d.ts.map +0 -1
  532. package/dist/commands/dom/__tests__/screenshotResize.unit.test.js +0 -184
  533. package/dist/commands/dom/__tests__/screenshotResize.unit.test.js.map +0 -1
  534. package/dist/commands/dom/a11y.d.ts.map +0 -1
  535. package/dist/commands/dom/a11y.js.map +0 -1
  536. package/dist/commands/dom/evalHelpers.d.ts +0 -38
  537. package/dist/commands/dom/evalHelpers.d.ts.map +0 -1
  538. package/dist/commands/dom/evalHelpers.js +0 -121
  539. package/dist/commands/dom/evalHelpers.js.map +0 -1
  540. package/dist/commands/dom/form.d.ts.map +0 -1
  541. package/dist/commands/dom/form.js.map +0 -1
  542. package/dist/commands/dom/formDiscovery.d.ts +0 -26
  543. package/dist/commands/dom/formDiscovery.d.ts.map +0 -1
  544. package/dist/commands/dom/formDiscovery.js.map +0 -1
  545. package/dist/commands/dom/formFillHelpers.d.ts +0 -186
  546. package/dist/commands/dom/formFillHelpers.d.ts.map +0 -1
  547. package/dist/commands/dom/formFillHelpers.js +0 -650
  548. package/dist/commands/dom/formFillHelpers.js.map +0 -1
  549. package/dist/commands/dom/formInteraction.d.ts.map +0 -1
  550. package/dist/commands/dom/formInteraction.js.map +0 -1
  551. package/dist/commands/dom/formSubmitHelpers.d.ts +0 -59
  552. package/dist/commands/dom/formSubmitHelpers.d.ts.map +0 -1
  553. package/dist/commands/dom/formSubmitHelpers.js +0 -163
  554. package/dist/commands/dom/formSubmitHelpers.js.map +0 -1
  555. package/dist/commands/dom/formTypes.d.ts +0 -75
  556. package/dist/commands/dom/formTypes.d.ts.map +0 -1
  557. package/dist/commands/dom/formTypes.js.map +0 -1
  558. package/dist/commands/dom/helpers.d.ts +0 -86
  559. package/dist/commands/dom/helpers.d.ts.map +0 -1
  560. package/dist/commands/dom/helpers.js +0 -656
  561. package/dist/commands/dom/helpers.js.map +0 -1
  562. package/dist/commands/dom/index.d.ts.map +0 -1
  563. package/dist/commands/dom/index.js.map +0 -1
  564. package/dist/commands/dom/keyMapping.d.ts +0 -56
  565. package/dist/commands/dom/keyMapping.d.ts.map +0 -1
  566. package/dist/commands/dom/keyMapping.js +0 -110
  567. package/dist/commands/dom/keyMapping.js.map +0 -1
  568. package/dist/commands/dom/reactEventHelpers.d.ts +0 -79
  569. package/dist/commands/dom/reactEventHelpers.d.ts.map +0 -1
  570. package/dist/commands/dom/reactEventHelpers.js +0 -239
  571. package/dist/commands/dom/reactEventHelpers.js.map +0 -1
  572. package/dist/commands/dom/screenshotResize.d.ts.map +0 -1
  573. package/dist/commands/dom/screenshotResize.js.map +0 -1
  574. package/dist/commands/helpJson.d.ts.map +0 -1
  575. package/dist/commands/helpJson.js.map +0 -1
  576. package/dist/commands/machineReadableHelp.d.ts +0 -165
  577. package/dist/commands/machineReadableHelp.d.ts.map +0 -1
  578. package/dist/commands/machineReadableHelp.js +0 -252
  579. package/dist/commands/machineReadableHelp.js.map +0 -1
  580. package/dist/commands/network/har.d.ts.map +0 -1
  581. package/dist/commands/network/har.js.map +0 -1
  582. package/dist/commands/network/index.d.ts.map +0 -1
  583. package/dist/commands/network/index.js.map +0 -1
  584. package/dist/commands/network/list.d.ts.map +0 -1
  585. package/dist/commands/network/list.js.map +0 -1
  586. package/dist/commands/network/shared.d.ts.map +0 -1
  587. package/dist/commands/network/shared.js.map +0 -1
  588. package/dist/commands/network.d.ts +0 -8
  589. package/dist/commands/network.d.ts.map +0 -1
  590. package/dist/commands/network.js +0 -216
  591. package/dist/commands/network.js.map +0 -1
  592. package/dist/commands/optionBehaviors.d.ts.map +0 -1
  593. package/dist/commands/optionBehaviors.js.map +0 -1
  594. package/dist/commands/peek.d.ts.map +0 -1
  595. package/dist/commands/peek.js.map +0 -1
  596. package/dist/commands/shared/CommandRunner.d.ts.map +0 -1
  597. package/dist/commands/shared/CommandRunner.js.map +0 -1
  598. package/dist/commands/shared/__tests__/validation.unit.test.d.ts +0 -7
  599. package/dist/commands/shared/__tests__/validation.unit.test.d.ts.map +0 -1
  600. package/dist/commands/shared/__tests__/validation.unit.test.js +0 -141
  601. package/dist/commands/shared/__tests__/validation.unit.test.js.map +0 -1
  602. package/dist/commands/shared/commonOptions.d.ts.map +0 -1
  603. package/dist/commands/shared/commonOptions.js.map +0 -1
  604. package/dist/commands/shared/daemonErrorHandler.d.ts.map +0 -1
  605. package/dist/commands/shared/daemonErrorHandler.js.map +0 -1
  606. package/dist/commands/shared/dataFetcher.d.ts.map +0 -1
  607. package/dist/commands/shared/dataFetcher.js.map +0 -1
  608. package/dist/commands/shared/followMode.d.ts.map +0 -1
  609. package/dist/commands/shared/followMode.js.map +0 -1
  610. package/dist/commands/shared/landingPage.d.ts.map +0 -1
  611. package/dist/commands/shared/landingPage.js.map +0 -1
  612. package/dist/commands/shared/optionTypes.d.ts.map +0 -1
  613. package/dist/commands/shared/optionTypes.js.map +0 -1
  614. package/dist/commands/shared/startHelpers.d.ts.map +0 -1
  615. package/dist/commands/shared/startHelpers.js.map +0 -1
  616. package/dist/commands/shared/validation.d.ts.map +0 -1
  617. package/dist/commands/shared/validation.js.map +0 -1
  618. package/dist/commands/start.d.ts.map +0 -1
  619. package/dist/commands/start.js.map +0 -1
  620. package/dist/commands/status.d.ts.map +0 -1
  621. package/dist/commands/status.js.map +0 -1
  622. package/dist/commands/stop.d.ts.map +0 -1
  623. package/dist/commands/stop.js.map +0 -1
  624. package/dist/commands/tail.d.ts.map +0 -1
  625. package/dist/commands/tail.js.map +0 -1
  626. package/dist/commands/types.d.ts.map +0 -1
  627. package/dist/commands/types.js.map +0 -1
  628. package/dist/commands.d.ts.map +0 -1
  629. package/dist/commands.js.map +0 -1
  630. package/dist/connection/__tests__/cdp.contract.test.d.ts +0 -16
  631. package/dist/connection/__tests__/cdp.contract.test.d.ts.map +0 -1
  632. package/dist/connection/__tests__/cdp.contract.test.js +0 -377
  633. package/dist/connection/__tests__/cdp.contract.test.js.map +0 -1
  634. package/dist/connection/__tests__/flagsBuilder.unit.test.d.ts +0 -9
  635. package/dist/connection/__tests__/flagsBuilder.unit.test.d.ts.map +0 -1
  636. package/dist/connection/__tests__/flagsBuilder.unit.test.js +0 -94
  637. package/dist/connection/__tests__/flagsBuilder.unit.test.js.map +0 -1
  638. package/dist/connection/__tests__/handlers.unit.test.d.ts +0 -11
  639. package/dist/connection/__tests__/handlers.unit.test.d.ts.map +0 -1
  640. package/dist/connection/__tests__/handlers.unit.test.js +0 -220
  641. package/dist/connection/__tests__/handlers.unit.test.js.map +0 -1
  642. package/dist/connection/__tests__/pageReadiness.contract.test.d.ts +0 -14
  643. package/dist/connection/__tests__/pageReadiness.contract.test.d.ts.map +0 -1
  644. package/dist/connection/__tests__/pageReadiness.contract.test.js +0 -382
  645. package/dist/connection/__tests__/pageReadiness.contract.test.js.map +0 -1
  646. package/dist/connection/__tests__/portReservation.contract.test.d.ts +0 -14
  647. package/dist/connection/__tests__/portReservation.contract.test.d.ts.map +0 -1
  648. package/dist/connection/__tests__/portReservation.contract.test.js +0 -250
  649. package/dist/connection/__tests__/portReservation.contract.test.js.map +0 -1
  650. package/dist/connection/cdp.d.ts.map +0 -1
  651. package/dist/connection/cdp.js.map +0 -1
  652. package/dist/connection/config.d.ts.map +0 -1
  653. package/dist/connection/config.js.map +0 -1
  654. package/dist/connection/diagnostics.d.ts.map +0 -1
  655. package/dist/connection/diagnostics.js.map +0 -1
  656. package/dist/connection/errors.d.ts.map +0 -1
  657. package/dist/connection/errors.js.map +0 -1
  658. package/dist/connection/events.d.ts.map +0 -1
  659. package/dist/connection/events.js.map +0 -1
  660. package/dist/connection/handlers.d.ts.map +0 -1
  661. package/dist/connection/handlers.js.map +0 -1
  662. package/dist/connection/launcher/binaryResolver.d.ts.map +0 -1
  663. package/dist/connection/launcher/binaryResolver.js.map +0 -1
  664. package/dist/connection/launcher/flagsBuilder.d.ts.map +0 -1
  665. package/dist/connection/launcher/flagsBuilder.js.map +0 -1
  666. package/dist/connection/launcher/preferencesLoader.d.ts.map +0 -1
  667. package/dist/connection/launcher/preferencesLoader.js.map +0 -1
  668. package/dist/connection/launcher.d.ts.map +0 -1
  669. package/dist/connection/launcher.js.map +0 -1
  670. package/dist/connection/pageReadiness.d.ts.map +0 -1
  671. package/dist/connection/pageReadiness.js.map +0 -1
  672. package/dist/connection/portReservation.d.ts.map +0 -1
  673. package/dist/connection/portReservation.js.map +0 -1
  674. package/dist/connection/typed-cdp.d.ts.map +0 -1
  675. package/dist/connection/typed-cdp.js.map +0 -1
  676. package/dist/connection/types.d.ts.map +0 -1
  677. package/dist/connection/types.js.map +0 -1
  678. package/dist/constants.d.ts.map +0 -1
  679. package/dist/constants.js.map +0 -1
  680. package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts +0 -8
  681. package/dist/daemon/__tests__/JsonlParser.unit.test.d.ts.map +0 -1
  682. package/dist/daemon/__tests__/JsonlParser.unit.test.js +0 -140
  683. package/dist/daemon/__tests__/JsonlParser.unit.test.js.map +0 -1
  684. package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts +0 -8
  685. package/dist/daemon/__tests__/PendingRequestManager.unit.test.d.ts.map +0 -1
  686. package/dist/daemon/__tests__/PendingRequestManager.unit.test.js +0 -276
  687. package/dist/daemon/__tests__/PendingRequestManager.unit.test.js.map +0 -1
  688. package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts +0 -8
  689. package/dist/daemon/__tests__/TelemetryStore.unit.test.d.ts.map +0 -1
  690. package/dist/daemon/__tests__/TelemetryStore.unit.test.js +0 -290
  691. package/dist/daemon/__tests__/TelemetryStore.unit.test.js.map +0 -1
  692. package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts +0 -8
  693. package/dist/daemon/__tests__/commandRegistry.contract.test.d.ts.map +0 -1
  694. package/dist/daemon/__tests__/commandRegistry.contract.test.js +0 -647
  695. package/dist/daemon/__tests__/commandRegistry.contract.test.js.map +0 -1
  696. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +0 -19
  697. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +0 -1
  698. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +0 -212
  699. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +0 -1
  700. package/dist/daemon/__tests__/ipcServer.contract.test.d.ts +0 -23
  701. package/dist/daemon/__tests__/ipcServer.contract.test.d.ts.map +0 -1
  702. package/dist/daemon/__tests__/ipcServer.contract.test.js +0 -416
  703. package/dist/daemon/__tests__/ipcServer.contract.test.js.map +0 -1
  704. package/dist/daemon/__tests__/launcher.unit.test.d.ts +0 -8
  705. package/dist/daemon/__tests__/launcher.unit.test.d.ts.map +0 -1
  706. package/dist/daemon/__tests__/launcher.unit.test.js +0 -20
  707. package/dist/daemon/__tests__/launcher.unit.test.js.map +0 -1
  708. package/dist/daemon/errors.d.ts.map +0 -1
  709. package/dist/daemon/errors.js.map +0 -1
  710. package/dist/daemon/handlers/BaseHandler.d.ts +0 -75
  711. package/dist/daemon/handlers/BaseHandler.d.ts.map +0 -1
  712. package/dist/daemon/handlers/BaseHandler.js +0 -103
  713. package/dist/daemon/handlers/BaseHandler.js.map +0 -1
  714. package/dist/daemon/handlers/CommandHandlers.d.ts +0 -36
  715. package/dist/daemon/handlers/CommandHandlers.d.ts.map +0 -1
  716. package/dist/daemon/handlers/CommandHandlers.js +0 -60
  717. package/dist/daemon/handlers/CommandHandlers.js.map +0 -1
  718. package/dist/daemon/handlers/QueryHandlers.d.ts +0 -37
  719. package/dist/daemon/handlers/QueryHandlers.d.ts.map +0 -1
  720. package/dist/daemon/handlers/QueryHandlers.js +0 -126
  721. package/dist/daemon/handlers/QueryHandlers.js.map +0 -1
  722. package/dist/daemon/handlers/SessionHandlers.d.ts +0 -32
  723. package/dist/daemon/handlers/SessionHandlers.d.ts.map +0 -1
  724. package/dist/daemon/handlers/SessionHandlers.js +0 -213
  725. package/dist/daemon/handlers/SessionHandlers.js.map +0 -1
  726. package/dist/daemon/handlers/pendingRequests.d.ts +0 -50
  727. package/dist/daemon/handlers/pendingRequests.d.ts.map +0 -1
  728. package/dist/daemon/handlers/pendingRequests.js +0 -57
  729. package/dist/daemon/handlers/pendingRequests.js.map +0 -1
  730. package/dist/daemon/handlers/requestHandlers.d.ts +0 -55
  731. package/dist/daemon/handlers/requestHandlers.d.ts.map +0 -1
  732. package/dist/daemon/handlers/requestHandlers.js +0 -66
  733. package/dist/daemon/handlers/requestHandlers.js.map +0 -1
  734. package/dist/daemon/handlers/responseHandler.d.ts +0 -42
  735. package/dist/daemon/handlers/responseHandler.d.ts.map +0 -1
  736. package/dist/daemon/handlers/responseHandler.js +0 -217
  737. package/dist/daemon/handlers/responseHandler.js.map +0 -1
  738. package/dist/daemon/ipcServer.d.ts.map +0 -1
  739. package/dist/daemon/ipcServer.js.map +0 -1
  740. package/dist/daemon/launcher.d.ts.map +0 -1
  741. package/dist/daemon/launcher.js.map +0 -1
  742. package/dist/daemon/lifecycle/cdpSetup.d.ts +0 -24
  743. package/dist/daemon/lifecycle/cdpSetup.d.ts.map +0 -1
  744. package/dist/daemon/lifecycle/cdpSetup.js +0 -55
  745. package/dist/daemon/lifecycle/cdpSetup.js.map +0 -1
  746. package/dist/daemon/lifecycle/chromeConnection.d.ts +0 -17
  747. package/dist/daemon/lifecycle/chromeConnection.d.ts.map +0 -1
  748. package/dist/daemon/lifecycle/chromeConnection.js +0 -79
  749. package/dist/daemon/lifecycle/chromeConnection.js.map +0 -1
  750. package/dist/daemon/lifecycle/signalHandlers.d.ts +0 -14
  751. package/dist/daemon/lifecycle/signalHandlers.d.ts.map +0 -1
  752. package/dist/daemon/lifecycle/signalHandlers.js +0 -48
  753. package/dist/daemon/lifecycle/signalHandlers.js.map +0 -1
  754. package/dist/daemon/lifecycle/workerCleanup.d.ts +0 -27
  755. package/dist/daemon/lifecycle/workerCleanup.d.ts.map +0 -1
  756. package/dist/daemon/lifecycle/workerCleanup.js +0 -143
  757. package/dist/daemon/lifecycle/workerCleanup.js.map +0 -1
  758. package/dist/daemon/lifecycle/workerConfig.d.ts +0 -14
  759. package/dist/daemon/lifecycle/workerConfig.d.ts.map +0 -1
  760. package/dist/daemon/lifecycle/workerConfig.js +0 -69
  761. package/dist/daemon/lifecycle/workerConfig.js.map +0 -1
  762. package/dist/daemon/lifecycle/workerIpc.d.ts +0 -14
  763. package/dist/daemon/lifecycle/workerIpc.d.ts.map +0 -1
  764. package/dist/daemon/lifecycle/workerIpc.js +0 -86
  765. package/dist/daemon/lifecycle/workerIpc.js.map +0 -1
  766. package/dist/daemon/patternDefinitions.d.ts.map +0 -1
  767. package/dist/daemon/patternDefinitions.js.map +0 -1
  768. package/dist/daemon/patternDetector.d.ts.map +0 -1
  769. package/dist/daemon/patternDetector.js.map +0 -1
  770. package/dist/daemon/server/JsonlParser.d.ts +0 -31
  771. package/dist/daemon/server/JsonlParser.d.ts.map +0 -1
  772. package/dist/daemon/server/JsonlParser.js +0 -55
  773. package/dist/daemon/server/JsonlParser.js.map +0 -1
  774. package/dist/daemon/server/SocketServer.d.ts.map +0 -1
  775. package/dist/daemon/server/SocketServer.js.map +0 -1
  776. package/dist/daemon/server/WorkerManager.d.ts +0 -36
  777. package/dist/daemon/server/WorkerManager.d.ts.map +0 -1
  778. package/dist/daemon/server/WorkerManager.js +0 -89
  779. package/dist/daemon/server/WorkerManager.js.map +0 -1
  780. package/dist/daemon/services/SessionService.d.ts +0 -87
  781. package/dist/daemon/services/SessionService.d.ts.map +0 -1
  782. package/dist/daemon/services/SessionService.js +0 -45
  783. package/dist/daemon/services/SessionService.js.map +0 -1
  784. package/dist/daemon/startSession.d.ts +0 -55
  785. package/dist/daemon/startSession.d.ts.map +0 -1
  786. package/dist/daemon/startSession.js +0 -168
  787. package/dist/daemon/startSession.js.map +0 -1
  788. package/dist/daemon/worker/TelemetryStore.d.ts +0 -19
  789. package/dist/daemon/worker/TelemetryStore.d.ts.map +0 -1
  790. package/dist/daemon/worker/TelemetryStore.js +0 -53
  791. package/dist/daemon/worker/TelemetryStore.js.map +0 -1
  792. package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts +0 -11
  793. package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts.map +0 -1
  794. package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js +0 -136
  795. package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js.map +0 -1
  796. package/dist/daemon/worker/collectors.d.ts.map +0 -1
  797. package/dist/daemon/worker/collectors.js.map +0 -1
  798. package/dist/daemon/worker/commandRegistry.d.ts.map +0 -1
  799. package/dist/daemon/worker/commandRegistry.js +0 -236
  800. package/dist/daemon/worker/commandRegistry.js.map +0 -1
  801. package/dist/daemon/worker/plugins.d.ts.map +0 -1
  802. package/dist/daemon/worker/plugins.js +0 -75
  803. package/dist/daemon/worker/plugins.js.map +0 -1
  804. package/dist/daemon/worker/types.d.ts +0 -15
  805. package/dist/daemon/worker/types.d.ts.map +0 -1
  806. package/dist/daemon/worker/types.js.map +0 -1
  807. package/dist/daemon/worker.d.ts +0 -9
  808. package/dist/daemon/worker.d.ts.map +0 -1
  809. package/dist/daemon/worker.js +0 -98
  810. package/dist/daemon/worker.js.map +0 -1
  811. package/dist/daemon/workerIpc.d.ts +0 -33
  812. package/dist/daemon/workerIpc.d.ts.map +0 -1
  813. package/dist/daemon/workerIpc.js +0 -8
  814. package/dist/daemon/workerIpc.js.map +0 -1
  815. package/dist/daemon.d.ts.map +0 -1
  816. package/dist/daemon.js.map +0 -1
  817. package/dist/index.d.ts.map +0 -1
  818. package/dist/index.js.map +0 -1
  819. package/dist/ipc/__tests__/client.contract.test.d.ts +0 -8
  820. package/dist/ipc/__tests__/client.contract.test.d.ts.map +0 -1
  821. package/dist/ipc/__tests__/client.contract.test.js +0 -693
  822. package/dist/ipc/__tests__/client.contract.test.js.map +0 -1
  823. package/dist/ipc/__tests__/errors.unit.test.d.ts +0 -7
  824. package/dist/ipc/__tests__/errors.unit.test.d.ts.map +0 -1
  825. package/dist/ipc/__tests__/errors.unit.test.js +0 -77
  826. package/dist/ipc/__tests__/errors.unit.test.js.map +0 -1
  827. package/dist/ipc/__tests__/guards.unit.test.d.ts +0 -7
  828. package/dist/ipc/__tests__/guards.unit.test.d.ts.map +0 -1
  829. package/dist/ipc/__tests__/guards.unit.test.js +0 -73
  830. package/dist/ipc/__tests__/guards.unit.test.js.map +0 -1
  831. package/dist/ipc/__tests__/jsonl.unit.test.d.ts +0 -7
  832. package/dist/ipc/__tests__/jsonl.unit.test.d.ts.map +0 -1
  833. package/dist/ipc/__tests__/jsonl.unit.test.js +0 -103
  834. package/dist/ipc/__tests__/jsonl.unit.test.js.map +0 -1
  835. package/dist/ipc/__tests__/validation.unit.test.d.ts +0 -7
  836. package/dist/ipc/__tests__/validation.unit.test.d.ts.map +0 -1
  837. package/dist/ipc/__tests__/validation.unit.test.js +0 -60
  838. package/dist/ipc/__tests__/validation.unit.test.js.map +0 -1
  839. package/dist/ipc/client.d.ts.map +0 -1
  840. package/dist/ipc/client.js.map +0 -1
  841. package/dist/ipc/index.d.ts.map +0 -1
  842. package/dist/ipc/index.js.map +0 -1
  843. package/dist/ipc/protocol/commands.d.ts.map +0 -1
  844. package/dist/ipc/protocol/commands.js.map +0 -1
  845. package/dist/ipc/protocol/guards.d.ts.map +0 -1
  846. package/dist/ipc/protocol/guards.js.map +0 -1
  847. package/dist/ipc/protocol/index.d.ts.map +0 -1
  848. package/dist/ipc/protocol/index.js.map +0 -1
  849. package/dist/ipc/protocol/messages.d.ts.map +0 -1
  850. package/dist/ipc/protocol/messages.js.map +0 -1
  851. package/dist/ipc/session/errors.d.ts.map +0 -1
  852. package/dist/ipc/session/errors.js.map +0 -1
  853. package/dist/ipc/session/index.d.ts.map +0 -1
  854. package/dist/ipc/session/index.js.map +0 -1
  855. package/dist/ipc/session/lifecycle.d.ts.map +0 -1
  856. package/dist/ipc/session/lifecycle.js.map +0 -1
  857. package/dist/ipc/session/queries.d.ts.map +0 -1
  858. package/dist/ipc/session/queries.js.map +0 -1
  859. package/dist/ipc/session/types.d.ts.map +0 -1
  860. package/dist/ipc/session/types.js.map +0 -1
  861. package/dist/ipc/transport/IPCError.d.ts.map +0 -1
  862. package/dist/ipc/transport/IPCError.js.map +0 -1
  863. package/dist/ipc/transport/errors.d.ts.map +0 -1
  864. package/dist/ipc/transport/errors.js.map +0 -1
  865. package/dist/ipc/transport/index.d.ts.map +0 -1
  866. package/dist/ipc/transport/index.js.map +0 -1
  867. package/dist/ipc/transport/jsonl.d.ts.map +0 -1
  868. package/dist/ipc/transport/jsonl.js.map +0 -1
  869. package/dist/ipc/transport/socket.d.ts.map +0 -1
  870. package/dist/ipc/transport/socket.js.map +0 -1
  871. package/dist/ipc/transport/validation.d.ts.map +0 -1
  872. package/dist/ipc/transport/validation.js.map +0 -1
  873. package/dist/ipc/utils/errors.d.ts.map +0 -1
  874. package/dist/ipc/utils/errors.js.map +0 -1
  875. package/dist/ipc/utils/index.d.ts.map +0 -1
  876. package/dist/ipc/utils/index.js.map +0 -1
  877. package/dist/ipc/utils/requestId.d.ts +0 -23
  878. package/dist/ipc/utils/requestId.d.ts.map +0 -1
  879. package/dist/ipc/utils/requestId.js +0 -27
  880. package/dist/ipc/utils/requestId.js.map +0 -1
  881. package/dist/ipc/utils/responseValidator.d.ts.map +0 -1
  882. package/dist/ipc/utils/responseValidator.js.map +0 -1
  883. package/dist/ipc/utils/session.d.ts.map +0 -1
  884. package/dist/ipc/utils/session.js.map +0 -1
  885. package/dist/ipc/utils/types.d.ts.map +0 -1
  886. package/dist/ipc/utils/types.js.map +0 -1
  887. package/dist/session/QueryCacheManager.d.ts.map +0 -1
  888. package/dist/session/QueryCacheManager.js.map +0 -1
  889. package/dist/session/__tests__/chrome-cache.contract.test.d.ts +0 -7
  890. package/dist/session/__tests__/chrome-cache.contract.test.d.ts.map +0 -1
  891. package/dist/session/__tests__/chrome-cache.contract.test.js +0 -77
  892. package/dist/session/__tests__/chrome-cache.contract.test.js.map +0 -1
  893. package/dist/session/__tests__/cleanup.contract.test.d.ts +0 -7
  894. package/dist/session/__tests__/cleanup.contract.test.d.ts.map +0 -1
  895. package/dist/session/__tests__/cleanup.contract.test.js +0 -84
  896. package/dist/session/__tests__/cleanup.contract.test.js.map +0 -1
  897. package/dist/session/__tests__/lock.contract.test.d.ts +0 -7
  898. package/dist/session/__tests__/lock.contract.test.d.ts.map +0 -1
  899. package/dist/session/__tests__/lock.contract.test.js +0 -77
  900. package/dist/session/__tests__/lock.contract.test.js.map +0 -1
  901. package/dist/session/__tests__/metadata.contract.test.d.ts +0 -7
  902. package/dist/session/__tests__/metadata.contract.test.d.ts.map +0 -1
  903. package/dist/session/__tests__/metadata.contract.test.js +0 -87
  904. package/dist/session/__tests__/metadata.contract.test.js.map +0 -1
  905. package/dist/session/chrome.d.ts.map +0 -1
  906. package/dist/session/chrome.js.map +0 -1
  907. package/dist/session/cleanup.d.ts +0 -141
  908. package/dist/session/cleanup.d.ts.map +0 -1
  909. package/dist/session/cleanup.js +0 -514
  910. package/dist/session/cleanup.js.map +0 -1
  911. package/dist/session/lock.d.ts +0 -57
  912. package/dist/session/lock.d.ts.map +0 -1
  913. package/dist/session/lock.js +0 -165
  914. package/dist/session/lock.js.map +0 -1
  915. package/dist/session/metadata.d.ts.map +0 -1
  916. package/dist/session/metadata.js.map +0 -1
  917. package/dist/session/output.d.ts +0 -18
  918. package/dist/session/output.d.ts.map +0 -1
  919. package/dist/session/output.js +0 -24
  920. package/dist/session/output.js.map +0 -1
  921. package/dist/session/paths.d.ts.map +0 -1
  922. package/dist/session/paths.js.map +0 -1
  923. package/dist/session/pid.d.ts.map +0 -1
  924. package/dist/session/pid.js.map +0 -1
  925. package/dist/session/port.d.ts.map +0 -1
  926. package/dist/session/port.js.map +0 -1
  927. package/dist/session/process.d.ts +0 -8
  928. package/dist/session/process.d.ts.map +0 -1
  929. package/dist/session/process.js +0 -8
  930. package/dist/session/process.js.map +0 -1
  931. package/dist/session/queryCache.d.ts +0 -46
  932. package/dist/session/queryCache.d.ts.map +0 -1
  933. package/dist/session/queryCache.js +0 -54
  934. package/dist/session/queryCache.js.map +0 -1
  935. package/dist/session/statusData.d.ts.map +0 -1
  936. package/dist/session/statusData.js.map +0 -1
  937. package/dist/telemetry/__tests__/a11y.unit.test.d.ts +0 -10
  938. package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +0 -1
  939. package/dist/telemetry/__tests__/a11y.unit.test.js +0 -265
  940. package/dist/telemetry/__tests__/a11y.unit.test.js.map +0 -1
  941. package/dist/telemetry/__tests__/filters.unit.test.d.ts +0 -2
  942. package/dist/telemetry/__tests__/filters.unit.test.d.ts.map +0 -1
  943. package/dist/telemetry/__tests__/filters.unit.test.js +0 -357
  944. package/dist/telemetry/__tests__/filters.unit.test.js.map +0 -1
  945. package/dist/telemetry/__tests__/navigation.contract.test.d.ts +0 -8
  946. package/dist/telemetry/__tests__/navigation.contract.test.d.ts.map +0 -1
  947. package/dist/telemetry/__tests__/navigation.contract.test.js +0 -211
  948. package/dist/telemetry/__tests__/navigation.contract.test.js.map +0 -1
  949. package/dist/telemetry/__tests__/network.contract.test.d.ts +0 -8
  950. package/dist/telemetry/__tests__/network.contract.test.d.ts.map +0 -1
  951. package/dist/telemetry/__tests__/network.contract.test.js +0 -623
  952. package/dist/telemetry/__tests__/network.contract.test.js.map +0 -1
  953. package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts +0 -2
  954. package/dist/telemetry/__tests__/remoteObject.unit.test.d.ts.map +0 -1
  955. package/dist/telemetry/__tests__/remoteObject.unit.test.js +0 -261
  956. package/dist/telemetry/__tests__/remoteObject.unit.test.js.map +0 -1
  957. package/dist/telemetry/__tests__/roleInference.unit.test.d.ts +0 -9
  958. package/dist/telemetry/__tests__/roleInference.unit.test.d.ts.map +0 -1
  959. package/dist/telemetry/__tests__/roleInference.unit.test.js +0 -138
  960. package/dist/telemetry/__tests__/roleInference.unit.test.js.map +0 -1
  961. package/dist/telemetry/__tests__/utils.unit.test.d.ts +0 -7
  962. package/dist/telemetry/__tests__/utils.unit.test.d.ts.map +0 -1
  963. package/dist/telemetry/__tests__/utils.unit.test.js +0 -91
  964. package/dist/telemetry/__tests__/utils.unit.test.js.map +0 -1
  965. package/dist/telemetry/a11y.d.ts.map +0 -1
  966. package/dist/telemetry/a11y.js.map +0 -1
  967. package/dist/telemetry/console.d.ts.map +0 -1
  968. package/dist/telemetry/console.js.map +0 -1
  969. package/dist/telemetry/dialogs.d.ts.map +0 -1
  970. package/dist/telemetry/dialogs.js.map +0 -1
  971. package/dist/telemetry/dom.d.ts.map +0 -1
  972. package/dist/telemetry/dom.js.map +0 -1
  973. package/dist/telemetry/filterDsl.d.ts.map +0 -1
  974. package/dist/telemetry/filterDsl.js.map +0 -1
  975. package/dist/telemetry/filterPresets.d.ts.map +0 -1
  976. package/dist/telemetry/filterPresets.js.map +0 -1
  977. package/dist/telemetry/filters.d.ts.map +0 -1
  978. package/dist/telemetry/filters.js.map +0 -1
  979. package/dist/telemetry/har/__tests__/builder.unit.test.d.ts +0 -8
  980. package/dist/telemetry/har/__tests__/builder.unit.test.d.ts.map +0 -1
  981. package/dist/telemetry/har/__tests__/builder.unit.test.js +0 -694
  982. package/dist/telemetry/har/__tests__/builder.unit.test.js.map +0 -1
  983. package/dist/telemetry/har/builder.d.ts.map +0 -1
  984. package/dist/telemetry/har/builder.js.map +0 -1
  985. package/dist/telemetry/har/types.d.ts.map +0 -1
  986. package/dist/telemetry/har/types.js.map +0 -1
  987. package/dist/telemetry/navigation.d.ts.map +0 -1
  988. package/dist/telemetry/navigation.js.map +0 -1
  989. package/dist/telemetry/network.d.ts.map +0 -1
  990. package/dist/telemetry/network.js.map +0 -1
  991. package/dist/telemetry/objectExpander.d.ts.map +0 -1
  992. package/dist/telemetry/objectExpander.js.map +0 -1
  993. package/dist/telemetry/remoteObject.d.ts.map +0 -1
  994. package/dist/telemetry/remoteObject.js.map +0 -1
  995. package/dist/telemetry/remoteObjectUtils.d.ts.map +0 -1
  996. package/dist/telemetry/remoteObjectUtils.js.map +0 -1
  997. package/dist/telemetry/roleInference.d.ts.map +0 -1
  998. package/dist/telemetry/roleInference.js.map +0 -1
  999. package/dist/telemetry/utils.d.ts.map +0 -1
  1000. package/dist/telemetry/utils.js.map +0 -1
  1001. package/dist/types/dom.d.ts +0 -77
  1002. package/dist/types/dom.d.ts.map +0 -1
  1003. package/dist/types/dom.js +0 -8
  1004. package/dist/types/dom.js.map +0 -1
  1005. package/dist/types.d.ts.map +0 -1
  1006. package/dist/types.js.map +0 -1
  1007. package/dist/ui/OutputBuilder.d.ts.map +0 -1
  1008. package/dist/ui/OutputBuilder.js.map +0 -1
  1009. package/dist/ui/errors/CommandError.d.ts.map +0 -1
  1010. package/dist/ui/errors/CommandError.js.map +0 -1
  1011. package/dist/ui/errors/index.d.ts.map +0 -1
  1012. package/dist/ui/errors/index.js.map +0 -1
  1013. package/dist/ui/errors/utils.d.ts.map +0 -1
  1014. package/dist/ui/errors/utils.js.map +0 -1
  1015. package/dist/ui/formatters/__tests__/preview.unit.test.d.ts +0 -13
  1016. package/dist/ui/formatters/__tests__/preview.unit.test.d.ts.map +0 -1
  1017. package/dist/ui/formatters/__tests__/preview.unit.test.js +0 -180
  1018. package/dist/ui/formatters/__tests__/preview.unit.test.js.map +0 -1
  1019. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +0 -2
  1020. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +0 -1
  1021. package/dist/ui/formatters/__tests__/semantic.unit.test.js +0 -111
  1022. package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +0 -1
  1023. package/dist/ui/formatters/a11y.d.ts.map +0 -1
  1024. package/dist/ui/formatters/a11y.js.map +0 -1
  1025. package/dist/ui/formatters/console.d.ts.map +0 -1
  1026. package/dist/ui/formatters/console.js.map +0 -1
  1027. package/dist/ui/formatters/cookies.d.ts.map +0 -1
  1028. package/dist/ui/formatters/cookies.js.map +0 -1
  1029. package/dist/ui/formatters/details.d.ts.map +0 -1
  1030. package/dist/ui/formatters/details.js.map +0 -1
  1031. package/dist/ui/formatters/dom.d.ts.map +0 -1
  1032. package/dist/ui/formatters/dom.js.map +0 -1
  1033. package/dist/ui/formatters/form.d.ts.map +0 -1
  1034. package/dist/ui/formatters/form.js.map +0 -1
  1035. package/dist/ui/formatters/helpFormatters.d.ts.map +0 -1
  1036. package/dist/ui/formatters/helpFormatters.js.map +0 -1
  1037. package/dist/ui/formatters/index.d.ts.map +0 -1
  1038. package/dist/ui/formatters/index.js.map +0 -1
  1039. package/dist/ui/formatters/networkHeaders.d.ts.map +0 -1
  1040. package/dist/ui/formatters/networkHeaders.js.map +0 -1
  1041. package/dist/ui/formatters/networkList.d.ts.map +0 -1
  1042. package/dist/ui/formatters/networkList.js.map +0 -1
  1043. package/dist/ui/formatters/preview.d.ts.map +0 -1
  1044. package/dist/ui/formatters/preview.js.map +0 -1
  1045. package/dist/ui/formatters/semantic.d.ts.map +0 -1
  1046. package/dist/ui/formatters/semantic.js.map +0 -1
  1047. package/dist/ui/formatters/sessionFormatters.d.ts +0 -58
  1048. package/dist/ui/formatters/sessionFormatters.d.ts.map +0 -1
  1049. package/dist/ui/formatters/sessionFormatters.js +0 -118
  1050. package/dist/ui/formatters/sessionFormatters.js.map +0 -1
  1051. package/dist/ui/formatters/status.d.ts.map +0 -1
  1052. package/dist/ui/formatters/status.js.map +0 -1
  1053. package/dist/ui/formatting.d.ts.map +0 -1
  1054. package/dist/ui/formatting.js.map +0 -1
  1055. package/dist/ui/logging/index.d.ts.map +0 -1
  1056. package/dist/ui/logging/index.js.map +0 -1
  1057. package/dist/ui/logging/logger.d.ts.map +0 -1
  1058. package/dist/ui/logging/logger.js.map +0 -1
  1059. package/dist/ui/messages/chrome.d.ts.map +0 -1
  1060. package/dist/ui/messages/chrome.js.map +0 -1
  1061. package/dist/ui/messages/commands.d.ts.map +0 -1
  1062. package/dist/ui/messages/commands.js.map +0 -1
  1063. package/dist/ui/messages/consoleMessages.d.ts.map +0 -1
  1064. package/dist/ui/messages/consoleMessages.js.map +0 -1
  1065. package/dist/ui/messages/debug.d.ts +0 -168
  1066. package/dist/ui/messages/debug.d.ts.map +0 -1
  1067. package/dist/ui/messages/debug.js +0 -219
  1068. package/dist/ui/messages/debug.js.map +0 -1
  1069. package/dist/ui/messages/dom.d.ts +0 -14
  1070. package/dist/ui/messages/dom.d.ts.map +0 -1
  1071. package/dist/ui/messages/dom.js +0 -28
  1072. package/dist/ui/messages/dom.js.map +0 -1
  1073. package/dist/ui/messages/errors.d.ts +0 -233
  1074. package/dist/ui/messages/errors.d.ts.map +0 -1
  1075. package/dist/ui/messages/errors.js +0 -395
  1076. package/dist/ui/messages/errors.js.map +0 -1
  1077. package/dist/ui/messages/hints.d.ts.map +0 -1
  1078. package/dist/ui/messages/hints.js.map +0 -1
  1079. package/dist/ui/messages/internal.d.ts +0 -23
  1080. package/dist/ui/messages/internal.d.ts.map +0 -1
  1081. package/dist/ui/messages/internal.js +0 -27
  1082. package/dist/ui/messages/internal.js.map +0 -1
  1083. package/dist/ui/messages/networkMessages.d.ts.map +0 -1
  1084. package/dist/ui/messages/networkMessages.js.map +0 -1
  1085. package/dist/ui/messages/preview.d.ts.map +0 -1
  1086. package/dist/ui/messages/preview.js.map +0 -1
  1087. package/dist/ui/messages/session.d.ts.map +0 -1
  1088. package/dist/ui/messages/session.js.map +0 -1
  1089. package/dist/ui/messages/validation.d.ts.map +0 -1
  1090. package/dist/ui/messages/validation.js.map +0 -1
  1091. package/dist/utils/__tests__/atomicFile.test.d.ts +0 -2
  1092. package/dist/utils/__tests__/atomicFile.test.d.ts.map +0 -1
  1093. package/dist/utils/__tests__/atomicFile.test.js +0 -43
  1094. package/dist/utils/__tests__/atomicFile.test.js.map +0 -1
  1095. package/dist/utils/__tests__/errors.unit.test.d.ts +0 -12
  1096. package/dist/utils/__tests__/errors.unit.test.d.ts.map +0 -1
  1097. package/dist/utils/__tests__/errors.unit.test.js +0 -255
  1098. package/dist/utils/__tests__/errors.unit.test.js.map +0 -1
  1099. package/dist/utils/__tests__/http.unit.test.d.ts +0 -12
  1100. package/dist/utils/__tests__/http.unit.test.d.ts.map +0 -1
  1101. package/dist/utils/__tests__/http.unit.test.js +0 -218
  1102. package/dist/utils/__tests__/http.unit.test.js.map +0 -1
  1103. package/dist/utils/__tests__/objects.test.d.ts +0 -2
  1104. package/dist/utils/__tests__/objects.test.d.ts.map +0 -1
  1105. package/dist/utils/__tests__/objects.test.js +0 -50
  1106. package/dist/utils/__tests__/objects.test.js.map +0 -1
  1107. package/dist/utils/__tests__/process.unit.test.d.ts +0 -14
  1108. package/dist/utils/__tests__/process.unit.test.d.ts.map +0 -1
  1109. package/dist/utils/__tests__/process.unit.test.js +0 -124
  1110. package/dist/utils/__tests__/process.unit.test.js.map +0 -1
  1111. package/dist/utils/__tests__/session.contract.test.d.ts +0 -2
  1112. package/dist/utils/__tests__/session.contract.test.d.ts.map +0 -1
  1113. package/dist/utils/__tests__/session.contract.test.js +0 -258
  1114. package/dist/utils/__tests__/session.contract.test.js.map +0 -1
  1115. package/dist/utils/__tests__/shellDetection.unit.test.d.ts +0 -12
  1116. package/dist/utils/__tests__/shellDetection.unit.test.d.ts.map +0 -1
  1117. package/dist/utils/__tests__/shellDetection.unit.test.js +0 -220
  1118. package/dist/utils/__tests__/shellDetection.unit.test.js.map +0 -1
  1119. package/dist/utils/__tests__/url.test.d.ts +0 -2
  1120. package/dist/utils/__tests__/url.test.d.ts.map +0 -1
  1121. package/dist/utils/__tests__/url.test.js +0 -42
  1122. package/dist/utils/__tests__/url.test.js.map +0 -1
  1123. package/dist/utils/async.d.ts.map +0 -1
  1124. package/dist/utils/async.js.map +0 -1
  1125. package/dist/utils/atomicFile.d.ts.map +0 -1
  1126. package/dist/utils/atomicFile.js.map +0 -1
  1127. package/dist/utils/concurrency.d.ts.map +0 -1
  1128. package/dist/utils/concurrency.js.map +0 -1
  1129. package/dist/utils/daemonErrors.d.ts +0 -60
  1130. package/dist/utils/daemonErrors.d.ts.map +0 -1
  1131. package/dist/utils/daemonErrors.js +0 -58
  1132. package/dist/utils/daemonErrors.js.map +0 -1
  1133. package/dist/utils/decisionTrees.d.ts.map +0 -1
  1134. package/dist/utils/decisionTrees.js.map +0 -1
  1135. package/dist/utils/errorMapping.d.ts.map +0 -1
  1136. package/dist/utils/errorMapping.js.map +0 -1
  1137. package/dist/utils/errors.d.ts.map +0 -1
  1138. package/dist/utils/errors.js.map +0 -1
  1139. package/dist/utils/exitCodes.d.ts.map +0 -1
  1140. package/dist/utils/exitCodes.js.map +0 -1
  1141. package/dist/utils/file.d.ts.map +0 -1
  1142. package/dist/utils/file.js.map +0 -1
  1143. package/dist/utils/http.d.ts.map +0 -1
  1144. package/dist/utils/http.js.map +0 -1
  1145. package/dist/utils/levenshtein.d.ts.map +0 -1
  1146. package/dist/utils/levenshtein.js.map +0 -1
  1147. package/dist/utils/objects.d.ts.map +0 -1
  1148. package/dist/utils/objects.js.map +0 -1
  1149. package/dist/utils/process.d.ts.map +0 -1
  1150. package/dist/utils/process.js.map +0 -1
  1151. package/dist/utils/shellDetection.d.ts.map +0 -1
  1152. package/dist/utils/shellDetection.js.map +0 -1
  1153. package/dist/utils/strings.d.ts.map +0 -1
  1154. package/dist/utils/strings.js.map +0 -1
  1155. package/dist/utils/suggestions.d.ts.map +0 -1
  1156. package/dist/utils/suggestions.js.map +0 -1
  1157. package/dist/utils/taskMappings.d.ts.map +0 -1
  1158. package/dist/utils/taskMappings.js.map +0 -1
  1159. package/dist/utils/typeGuards.d.ts.map +0 -1
  1160. package/dist/utils/typeGuards.js.map +0 -1
  1161. package/dist/utils/url.d.ts.map +0 -1
  1162. package/dist/utils/url.js.map +0 -1
  1163. package/dist/utils/validation.d.ts.map +0 -1
  1164. package/dist/utils/validation.js.map +0 -1
  1165. package/dist/utils/version.d.ts.map +0 -1
  1166. package/dist/utils/version.js.map +0 -1
  1167. /package/dist/daemon/{worker → session}/commandRegistry.d.ts +0 -0
  1168. /package/dist/daemon/{worker → session}/types.js +0 -0
  1169. /package/dist/{ui/errors → errors}/CommandError.d.ts +0 -0
  1170. /package/dist/{ui/errors → errors}/index.js +0 -0
  1171. /package/dist/{ui/errors → errors}/utils.d.ts +0 -0
  1172. /package/dist/{commands → runtime}/dom/formTypes.js +0 -0
@@ -0,0 +1,256 @@
1
+ /**
2
+ * What a DOM action changed on the page: whether it navigated (to a new
3
+ * document or within the same one), which messages appeared, and whether it
4
+ * had no visible effect at all. Costs one page script sent before the action
5
+ * (not waited for: CDP runs it before the action's own scripts) and one read
6
+ * after it, plus a second look 300 ms later when nothing seemed to happen.
7
+ * Worst case, when the page does not answer (a navigation is pending), the
8
+ * snapshot is given up after {@link START_TIMEOUT_MS} and each read after
9
+ * {@link READ_TIMEOUT_MS}.
10
+ */
11
+ import { EFFECTS_READ_SCRIPT, EFFECTS_START_SCRIPT, EFFECTS_STOP_SCRIPT, } from './actionEffectsScripts.js';
12
+ import { listenForActivity, } from './pageActivity.js';
13
+ import { createLogger } from '../../ui/logging/index.js';
14
+ import { delay, raceTimeout } from '../../utils/async.js';
15
+ import { getErrorMessage } from '../../utils/errors.js';
16
+ const log = createLogger('dom');
17
+ /** Messages reported per action */
18
+ const MAX_NEW_MESSAGES = 3;
19
+ /** Longest message text reported */
20
+ const MAX_MESSAGE_LENGTH = 120;
21
+ /** How long collecting waits for the snapshot taken before the action */
22
+ const START_TIMEOUT_MS = 200;
23
+ /** How long a read after the action may take before its part is skipped */
24
+ const READ_TIMEOUT_MS = 250;
25
+ /** Second look before claiming "no effect" (late timers, animations) */
26
+ const NO_EFFECT_RECHECK_MS = 300;
27
+ /**
28
+ * Texts that tick on their own (clocks, counters, countdowns, percentages):
29
+ * digits with separators and at most a time unit, e.g. `12:04:33`, `57%`,
30
+ * `3 s`. Their changes are not reported as new messages.
31
+ */
32
+ const TICKING_TEXT = /^[\d\s:.,/%+\-–—()]*\d[\d\s:.,/%+\-–—()]*(ms|s|sec|secs|min|mins|h|am|pm)?$/i;
33
+ /**
34
+ * Messages that are new after the action: all of them after a new document
35
+ * loaded; otherwise those whose text is shown more often than before (a
36
+ * re-rendered message with the same text is not new) and those whose
37
+ * element changed its text. Texts that tick on their own
38
+ * ({@link TICKING_TEXT}: clocks, counters) are left out; other elements
39
+ * that change on their own (a rotating banner) are not recognised. Each text
40
+ * is reported once, at most {@link MAX_NEW_MESSAGES}, cut to
41
+ * {@link MAX_MESSAGE_LENGTH} characters.
42
+ *
43
+ * @param before - Messages before the action
44
+ * @param after - Messages after the action
45
+ * @param newDocument - Whether a new document loaded
46
+ * @returns New messages
47
+ */
48
+ export function newMessages(before, after, newDocument) {
49
+ const countTexts = (messages) => {
50
+ const counts = new Map();
51
+ messages.forEach(({ text }) => counts.set(text, (counts.get(text) ?? 0) + 1));
52
+ return counts;
53
+ };
54
+ const beforeCounts = countTexts(before);
55
+ const afterCounts = countTexts(after);
56
+ const textBefore = new Map(before.map((message) => [message.id, message.text]));
57
+ const isNew = (message) => {
58
+ if (newDocument)
59
+ return true;
60
+ const previous = textBefore.get(message.id);
61
+ if (previous === message.text)
62
+ return false;
63
+ if (previous !== undefined)
64
+ return true;
65
+ return (afterCounts.get(message.text) ?? 0) > (beforeCounts.get(message.text) ?? 0);
66
+ };
67
+ const reported = new Set();
68
+ const result = [];
69
+ for (const message of after) {
70
+ if (result.length >= MAX_NEW_MESSAGES)
71
+ break;
72
+ if (reported.has(message.text) || TICKING_TEXT.test(message.text))
73
+ continue;
74
+ if (!isNew(message))
75
+ continue;
76
+ reported.add(message.text);
77
+ result.push({ text: cutText(message.text), element: message.element });
78
+ }
79
+ return result;
80
+ }
81
+ /**
82
+ * Cut a text to {@link MAX_MESSAGE_LENGTH} characters, marking the cut.
83
+ *
84
+ * @param text - Text
85
+ * @returns Text of at most that length
86
+ */
87
+ function cutText(text) {
88
+ const characters = Array.from(text);
89
+ if (characters.length <= MAX_MESSAGE_LENGTH)
90
+ return text;
91
+ return `${characters.slice(0, MAX_MESSAGE_LENGTH - 1).join('')}…`;
92
+ }
93
+ /**
94
+ * How the page's location changed: a new document committed in the main
95
+ * frame (also when it has the URL it had, as after a form POST that
96
+ * redirects back), or a same-document URL change (history API, hash).
97
+ *
98
+ * Without the URL before the action, a same-document change is reported
99
+ * only when Chrome announced one.
100
+ *
101
+ * @param startHref - URL before the action (undefined when not read)
102
+ * @param read - Page read after the action (undefined when not read)
103
+ * @param events - Main-frame navigation events
104
+ * @returns Navigation, or undefined when the location did not change
105
+ */
106
+ export function pageNavigation(startHref, read, events) {
107
+ if (events.document) {
108
+ const status = events.statusByLoader.get(events.document.loaderId);
109
+ return {
110
+ url: read?.href ?? events.document.url,
111
+ sameDocument: false,
112
+ ...(status !== undefined && { status }),
113
+ };
114
+ }
115
+ const url = read?.href ?? events.withinDocumentUrl;
116
+ if (url === undefined || url === startHref)
117
+ return undefined;
118
+ if (startHref === undefined && events.withinDocumentUrl === undefined)
119
+ return undefined;
120
+ return { url, sameDocument: true };
121
+ }
122
+ /**
123
+ * Whether an action had no visible effect: the page was read before and
124
+ * after in the same document, it counted no DOM change, nothing made the
125
+ * check uncertain, and no navigation, message, request, dialog or new window
126
+ * happened.
127
+ *
128
+ * @param read - Page read after the action
129
+ * @param effects - Navigation and messages found
130
+ * @param activity - Requests, dialogs and windows during the action
131
+ * @returns True to report `effect: "none"`
132
+ */
133
+ export function hadNoEffect(read, effects, activity) {
134
+ return (read !== undefined &&
135
+ !read.fresh &&
136
+ read.changes === 0 &&
137
+ read.uncertain === undefined &&
138
+ effects.navigation === undefined &&
139
+ (effects.messages ?? []).length === 0 &&
140
+ activity.requests === 0 &&
141
+ activity.dialogs === 0 &&
142
+ !activity.opened);
143
+ }
144
+ /**
145
+ * Start watching an action's effects: listen for main-frame navigations,
146
+ * document statuses, requests and new windows, and send the page snapshot
147
+ * without waiting for it.
148
+ *
149
+ * @param cdp - CDP connection
150
+ * @returns Watch to collect from after the action
151
+ */
152
+ export function watchActionEffects(cdp) {
153
+ const watch = {
154
+ cdp,
155
+ listener: listenForActivity(cdp),
156
+ start: evaluate(cdp, EFFECTS_START_SCRIPT),
157
+ stopConfirmed: false,
158
+ };
159
+ return {
160
+ collect: (options) => collectEffects(watch, options),
161
+ dispose: () => disposeWatch(watch),
162
+ };
163
+ }
164
+ /**
165
+ * What changed: the navigation (from CDP events even without a snapshot),
166
+ * new messages and, when asked, "no effect" after a second look.
167
+ *
168
+ * @param watch - The action's watch
169
+ * @param options - Dialogs the action opened, and whether to decide "no effect"
170
+ * @returns What changed
171
+ */
172
+ async function collectEffects(watch, options) {
173
+ const start = await raceTimeout(watch.start, START_TIMEOUT_MS);
174
+ if (!start)
175
+ return effectsOf(undefined, undefined, watch.listener.events);
176
+ let snapshot = await readPage(watch, false);
177
+ let effects = effectsOf(start, snapshot, watch.listener.events);
178
+ const quiet = () => hadNoEffect(snapshot, effects, { ...watch.listener.activity(), dialogs: options.dialogs });
179
+ if (!options.detectNoEffect || !quiet())
180
+ return effects;
181
+ await delay(NO_EFFECT_RECHECK_MS);
182
+ snapshot = await readPage(watch, true);
183
+ effects = effectsOf(start, snapshot, watch.listener.events);
184
+ return quiet() ? { ...effects, effect: 'none' } : effects;
185
+ }
186
+ /**
187
+ * Navigation and new messages from the snapshots and CDP events.
188
+ *
189
+ * @param start - Snapshot before the action, if taken
190
+ * @param snapshot - Read after the action, if taken
191
+ * @param events - Main-frame navigation events
192
+ * @returns Effects, without empty parts
193
+ */
194
+ function effectsOf(start, snapshot, events) {
195
+ const navigation = pageNavigation(start?.href, snapshot, events);
196
+ const messages = start && snapshot ? newMessages(start.messages, snapshot.messages, snapshot.fresh) : [];
197
+ return {
198
+ ...(navigation && { navigation }),
199
+ ...(messages.length > 0 && { messages }),
200
+ };
201
+ }
202
+ /**
203
+ * Read the page after the action, unless a main-frame load is pending (the
204
+ * read would wait for the new page). A stopping read that answered stops the
205
+ * page's watch, so disposing need not.
206
+ *
207
+ * @param watch - The action's watch
208
+ * @param stop - Also stop the page's watch
209
+ * @returns The read, or undefined
210
+ */
211
+ async function readPage(watch, stop) {
212
+ if (watch.listener.navigationPending())
213
+ return undefined;
214
+ const expression = `(${EFFECTS_READ_SCRIPT})(${stop})`;
215
+ const snapshot = await raceTimeout(evaluate(watch.cdp, expression), READ_TIMEOUT_MS);
216
+ if (stop && snapshot)
217
+ watch.stopConfirmed = true;
218
+ return snapshot;
219
+ }
220
+ /**
221
+ * Stop listening, and stop the page's watch unless a read did. The stop is
222
+ * sent even when the snapshot never answered: CDP runs it after the
223
+ * snapshot, wherever that ran (the page also stops watching on its own
224
+ * after 30 s).
225
+ *
226
+ * @param watch - The action's watch
227
+ */
228
+ function disposeWatch(watch) {
229
+ watch.listener.dispose();
230
+ if (watch.stopConfirmed)
231
+ return;
232
+ void watch.cdp
233
+ .send('Runtime.evaluate', { expression: EFFECTS_STOP_SCRIPT })
234
+ .catch((error) => log.debug(`Effects watch not stopped: ${getErrorMessage(error)}`));
235
+ }
236
+ /**
237
+ * Evaluate a page script for its value (undefined on an exception or a
238
+ * failed call).
239
+ *
240
+ * @param cdp - CDP connection
241
+ * @param expression - Script
242
+ * @returns Its value, or undefined
243
+ */
244
+ async function evaluate(cdp, expression) {
245
+ try {
246
+ const reply = (await cdp.send('Runtime.evaluate', { expression, returnByValue: true }));
247
+ if (!reply.exceptionDetails)
248
+ return reply.result?.value;
249
+ log.debug(`Effects script failed: ${reply.exceptionDetails.text}`);
250
+ }
251
+ catch (error) {
252
+ log.debug(`Effects script not run: ${getErrorMessage(error)}`);
253
+ }
254
+ return undefined;
255
+ }
256
+ //# sourceMappingURL=actionEffects.js.map
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Page scripts behind the "what changed" part of DOM action results: one
3
+ * snapshot before the action ({@link EFFECTS_START_SCRIPT}) and one read after
4
+ * it ({@link EFFECTS_READ_SCRIPT}).
5
+ */
6
+ /**
7
+ * Page-side test whether an element is part of a message's chrome rather
8
+ * than its text: aria-hidden parts, buttons, and elements whose class or
9
+ * aria-label names a close/dismiss control (`close`, `btn-close`, `close_x`;
10
+ * not `closeable`, `enclosed` or `disclosure`).
11
+ */
12
+ export declare const MESSAGE_CHROME_JS = "(node) => {\n const closer = /(^|[-_\\s])(close|dismiss)($|[-_\\s])/i;\n return node.getAttribute('aria-hidden') === 'true' ||\n /^(button|script|style|template)$/.test(node.localName) ||\n node.getAttribute('role') === 'button' ||\n closer.test(node.getAttribute('class') || '') ||\n closer.test(node.getAttribute('aria-label') || '');\n}";
13
+ /**
14
+ * Page-side test whether a mutation is only focus/hover churn: a class
15
+ * change on an element the action's events hit (`targets`) that only adds
16
+ * or removes classes containing "focus" or "hover".
17
+ */
18
+ export declare const CHURN_ONLY_JS = "(record, targets) => {\n if (record.type !== 'attributes' || record.attributeName !== 'class' || !targets.has(record.target)) return false;\n const tokens = (text) => new Set((text || '').split(/\\s+/).filter(Boolean));\n const before = tokens(record.oldValue);\n const after = tokens(record.target.getAttribute('class'));\n const changed = [...before].filter((c) => !after.has(c)).concat([...after].filter((c) => !before.has(c)));\n return changed.every((c) => /focus|hover/i.test(c));\n}";
19
+ /**
20
+ * Page-side reason why "no effect" can't be claimed even without DOM
21
+ * changes, or undefined: `clipboard` (a copy or cut happened), `no-event`
22
+ * (no event reached the page), `control` (form controls, labels, media,
23
+ * frames, popover/command buttons: their effect needs no DOM change),
24
+ * `new-window` (download or `target` links), `external-link` (mailto:, tel:,
25
+ * javascript: and other non-http links), `closed-shadow` (a custom element
26
+ * whose inside is not observed) or `focus` (focus moved to an element that
27
+ * may reveal content with CSS).
28
+ */
29
+ export declare const UNCERTAIN_JS = "(state, active) => {\n if (state.copied) return 'clipboard';\n if (state.targets.size === 0) return 'no-event';\n const controls = /^(input|select|textarea|option|label|canvas|video|audio|iframe|embed|object)$/;\n for (const node of state.path) {\n if (controls.test(node.localName) || node.isContentEditable) return 'control';\n if (node.hasAttribute('popovertarget') || node.hasAttribute('commandfor')) return 'control';\n if (node.localName === 'a' && node.hasAttribute('href')) {\n if (node.hasAttribute('download') || (node.target && node.target !== '_self')) return 'new-window';\n if (!/^https?:$/.test(node.protocol)) return 'external-link';\n }\n }\n for (const node of state.targets) if (node.localName.includes('-') && !node.shadowRoot) return 'closed-shadow';\n const plain = (node) => /^(body|button|summary)$/.test(node.localName) ||\n (node.localName === 'a' && node.hasAttribute('href')) ||\n (node.localName === 'input' && /^(button|submit|reset)$/i.test(node.type || ''));\n if (active && active !== state.focus && !plain(active)) return 'focus';\n return undefined;\n}";
30
+ /**
31
+ * Snapshot before an action, left in `window.__bdgEffects`: the messages
32
+ * shown, and a MutationObserver (on the document, its open shadow roots and
33
+ * any shadow root attached while watching, which also counts as a change)
34
+ * counting changes other than {@link CHURN_ONLY_JS}. Capture listeners
35
+ * record which elements the action's events reached, copy/cut events, and
36
+ * the scroll position at the first press (a click scrolls its target into
37
+ * view first). The watch stops itself after {@link MAX_WATCH_MS}, so a
38
+ * snapshot that ran late (after a navigation, with nobody reading it)
39
+ * leaves nothing behind. Evaluates to the URL and the messages.
40
+ */
41
+ export declare const EFFECTS_START_SCRIPT: string;
42
+ /**
43
+ * Read after an action (call with `true` to also stop watching): the URL,
44
+ * the messages shown and, when the snapshot is still there (same document),
45
+ * the number of changes counted (plus one when the page scrolled after the
46
+ * press) and why "no effect" could not be claimed ({@link UNCERTAIN_JS}).
47
+ * `fresh` means a new document (everything shown is new).
48
+ */
49
+ export declare const EFFECTS_READ_SCRIPT: string;
50
+ /** Stops the watch {@link EFFECTS_START_SCRIPT} left (when no read stopped it) */
51
+ export declare const EFFECTS_STOP_SCRIPT = "if (window.__bdgEffects) { window.__bdgEffects.stop(); delete window.__bdgEffects; }";
52
+ //# sourceMappingURL=actionEffectsScripts.d.ts.map
@@ -0,0 +1,234 @@
1
+ /**
2
+ * Page scripts behind the "what changed" part of DOM action results: one
3
+ * snapshot before the action ({@link EFFECTS_START_SCRIPT}) and one read after
4
+ * it ({@link EFFECTS_READ_SCRIPT}).
5
+ */
6
+ import { ELEMENT_DESCRIPTION_JS } from './elementInfo.js';
7
+ /** Class or id words that mark an element as a message (flash, toast, field error) */
8
+ const MESSAGE_WORDS = [
9
+ 'flash',
10
+ 'alert',
11
+ 'error',
12
+ 'toast',
13
+ 'notice',
14
+ 'message',
15
+ 'invalid',
16
+ 'feedback',
17
+ ];
18
+ /** Elements that show messages by role, plus a cheap prefilter for the class and id words */
19
+ const MESSAGE_CANDIDATES = [
20
+ '[role="alert"]',
21
+ '[role="status"]',
22
+ '[aria-live]',
23
+ 'output',
24
+ ...MESSAGE_WORDS.flatMap((word) => [`[class*="${word}" i]`, `[id*="${word}" i]`]),
25
+ ].join(', ');
26
+ /** Messages kept per snapshot (after filtering) */
27
+ const MAX_MESSAGES = 50;
28
+ /** Time a message snapshot may spend before it stops looking (ms) */
29
+ const MESSAGES_BUDGET_MS = 5;
30
+ /** Longer texts are containers (a page, a form), not messages */
31
+ const MAX_MESSAGE_TEXT = 300;
32
+ /** How long a page keeps watching when no read or stop arrives (ms) */
33
+ const MAX_WATCH_MS = 30000;
34
+ /**
35
+ * Page-side test whether an element is part of a message's chrome rather
36
+ * than its text: aria-hidden parts, buttons, and elements whose class or
37
+ * aria-label names a close/dismiss control (`close`, `btn-close`, `close_x`;
38
+ * not `closeable`, `enclosed` or `disclosure`).
39
+ */
40
+ export const MESSAGE_CHROME_JS = `(node) => {
41
+ const closer = /(^|[-_\\s])(close|dismiss)($|[-_\\s])/i;
42
+ return node.getAttribute('aria-hidden') === 'true' ||
43
+ /^(button|script|style|template)$/.test(node.localName) ||
44
+ node.getAttribute('role') === 'button' ||
45
+ closer.test(node.getAttribute('class') || '') ||
46
+ closer.test(node.getAttribute('aria-label') || '');
47
+ }`;
48
+ /**
49
+ * Page-side list of the messages a page shows: visible elements with an
50
+ * alert/status role, `aria-live`, `<output>`, or a class or id word from
51
+ * {@link MESSAGE_WORDS} (timers, marquees and progress bars left out), with
52
+ * their text (parts matching {@link MESSAGE_CHROME_JS}, such as the "×"
53
+ * close link, left out). Elements are filtered first, then the first
54
+ * {@link MAX_MESSAGES} kept, and the whole pass stops after
55
+ * {@link MESSAGES_BUDGET_MS}. Only the innermost of nested messages is kept,
56
+ * described by tag, id and classes (or its role when it has neither,
57
+ * `h3[role="alert"]`). Each element gets a number from `ids` that stays the
58
+ * same within the document, so a later snapshot can tell a new element from
59
+ * one that was there.
60
+ */
61
+ const MESSAGES_JS = `(ids) => {
62
+ const deadline = performance.now() + ${MESSAGES_BUDGET_MS};
63
+ const description = ${ELEMENT_DESCRIPTION_JS};
64
+ const chrome = ${MESSAGE_CHROME_JS};
65
+ const describe = (el) => {
66
+ const text = description(el);
67
+ const role = el.getAttribute('role');
68
+ return text === el.localName && role ? text + '[role="' + role + '"]' : text;
69
+ };
70
+ const word = /\\b(${MESSAGE_WORDS.join('|')})\\b/i;
71
+ const named = (el) => !/^(timer|marquee|progressbar)$/.test(el.getAttribute('role') || '') &&
72
+ (el.matches('[role="alert"], [role="status"], [aria-live]:not([aria-live="off"]), output') ||
73
+ word.test(el.getAttribute('class') || '') || word.test(el.id || ''));
74
+ const shown = (el) => !el.closest('[aria-hidden="true"]') && el.getClientRects().length > 0 &&
75
+ (!el.checkVisibility || el.checkVisibility({ visibilityProperty: true, opacityProperty: true }));
76
+ const inChrome = (node, el) => {
77
+ for (let n = node; n && n !== el; n = n.parentElement) if (chrome(n)) return true;
78
+ return false;
79
+ };
80
+ const textOf = (el) => {
81
+ let text = '';
82
+ const walker = document.createTreeWalker(el, NodeFilter.SHOW_TEXT);
83
+ while (text.length <= ${MAX_MESSAGE_TEXT} && walker.nextNode()) {
84
+ const parent = walker.currentNode.parentElement;
85
+ if (!parent || inChrome(parent, el)) continue;
86
+ if (parent.checkVisibility && !parent.checkVisibility({ visibilityProperty: true, opacityProperty: true })) continue;
87
+ text += ' ' + walker.currentNode.data;
88
+ }
89
+ return text.replace(/\\s+/g, ' ').trim();
90
+ };
91
+ const found = [];
92
+ for (const el of document.querySelectorAll(${JSON.stringify(MESSAGE_CANDIDATES)})) {
93
+ if (found.length >= ${MAX_MESSAGES} || performance.now() > deadline) break;
94
+ if (!named(el) || !shown(el)) continue;
95
+ const text = textOf(el);
96
+ if (text !== '' && text.length <= ${MAX_MESSAGE_TEXT}) found.push({ el: el, text: text });
97
+ }
98
+ return found
99
+ .filter((m) => !found.some((other) => other !== m && m.el.contains(other.el)))
100
+ .map((m) => {
101
+ let id = ids.map.get(m.el);
102
+ if (id === undefined) {
103
+ id = ids.next++;
104
+ ids.map.set(m.el, id);
105
+ }
106
+ return { id: id, text: m.text, element: describe(m.el) };
107
+ });
108
+ }`;
109
+ /**
110
+ * Page-side test whether a mutation is only focus/hover churn: a class
111
+ * change on an element the action's events hit (`targets`) that only adds
112
+ * or removes classes containing "focus" or "hover".
113
+ */
114
+ export const CHURN_ONLY_JS = `(record, targets) => {
115
+ if (record.type !== 'attributes' || record.attributeName !== 'class' || !targets.has(record.target)) return false;
116
+ const tokens = (text) => new Set((text || '').split(/\\s+/).filter(Boolean));
117
+ const before = tokens(record.oldValue);
118
+ const after = tokens(record.target.getAttribute('class'));
119
+ const changed = [...before].filter((c) => !after.has(c)).concat([...after].filter((c) => !before.has(c)));
120
+ return changed.every((c) => /focus|hover/i.test(c));
121
+ }`;
122
+ /**
123
+ * Page-side reason why "no effect" can't be claimed even without DOM
124
+ * changes, or undefined: `clipboard` (a copy or cut happened), `no-event`
125
+ * (no event reached the page), `control` (form controls, labels, media,
126
+ * frames, popover/command buttons: their effect needs no DOM change),
127
+ * `new-window` (download or `target` links), `external-link` (mailto:, tel:,
128
+ * javascript: and other non-http links), `closed-shadow` (a custom element
129
+ * whose inside is not observed) or `focus` (focus moved to an element that
130
+ * may reveal content with CSS).
131
+ */
132
+ export const UNCERTAIN_JS = `(state, active) => {
133
+ if (state.copied) return 'clipboard';
134
+ if (state.targets.size === 0) return 'no-event';
135
+ const controls = /^(input|select|textarea|option|label|canvas|video|audio|iframe|embed|object)$/;
136
+ for (const node of state.path) {
137
+ if (controls.test(node.localName) || node.isContentEditable) return 'control';
138
+ if (node.hasAttribute('popovertarget') || node.hasAttribute('commandfor')) return 'control';
139
+ if (node.localName === 'a' && node.hasAttribute('href')) {
140
+ if (node.hasAttribute('download') || (node.target && node.target !== '_self')) return 'new-window';
141
+ if (!/^https?:$/.test(node.protocol)) return 'external-link';
142
+ }
143
+ }
144
+ for (const node of state.targets) if (node.localName.includes('-') && !node.shadowRoot) return 'closed-shadow';
145
+ const plain = (node) => /^(body|button|summary)$/.test(node.localName) ||
146
+ (node.localName === 'a' && node.hasAttribute('href')) ||
147
+ (node.localName === 'input' && /^(button|submit|reset)$/i.test(node.type || ''));
148
+ if (active && active !== state.focus && !plain(active)) return 'focus';
149
+ return undefined;
150
+ }`;
151
+ /**
152
+ * Snapshot before an action, left in `window.__bdgEffects`: the messages
153
+ * shown, and a MutationObserver (on the document, its open shadow roots and
154
+ * any shadow root attached while watching, which also counts as a change)
155
+ * counting changes other than {@link CHURN_ONLY_JS}. Capture listeners
156
+ * record which elements the action's events reached, copy/cut events, and
157
+ * the scroll position at the first press (a click scrolls its target into
158
+ * view first). The watch stops itself after {@link MAX_WATCH_MS}, so a
159
+ * snapshot that ran late (after a navigation, with nobody reading it)
160
+ * leaves nothing behind. Evaluates to the URL and the messages.
161
+ */
162
+ export const EFFECTS_START_SCRIPT = `(() => {
163
+ if (window.__bdgEffects) window.__bdgEffects.stop();
164
+ const churnOnly = ${CHURN_ONLY_JS};
165
+ const ids = { map: new WeakMap(), next: 1 };
166
+ const state = { ids: ids, changes: 0, targets: new Set(), path: new Set(), focus: document.activeElement, pressScroll: null, copied: false, stopped: false };
167
+ const count = (records) => {
168
+ for (const record of records) if (!churnOnly(record, state.targets)) state.changes++;
169
+ };
170
+ const observer = new MutationObserver(count);
171
+ const options = { subtree: true, childList: true, characterData: true, attributes: true, attributeOldValue: true };
172
+ const observe = (root) => {
173
+ observer.observe(root, options);
174
+ for (const el of root.querySelectorAll('*')) if (el.shadowRoot) observe(el.shadowRoot);
175
+ };
176
+ observe(document);
177
+ const attachShadow = Element.prototype.attachShadow;
178
+ const watchedAttach = function (init) {
179
+ const root = attachShadow.call(this, init);
180
+ state.changes++;
181
+ observer.observe(root, options);
182
+ return root;
183
+ };
184
+ Element.prototype.attachShadow = watchedAttach;
185
+ const types = ['pointerdown', 'mousedown', 'click', 'keydown', 'focusin', 'submit', 'mouseover', 'input', 'change', 'copy', 'cut'];
186
+ const pressTypes = ['pointerdown', 'mousedown', 'click', 'keydown', 'submit'];
187
+ const record = (event) => {
188
+ if (event.type === 'copy' || event.type === 'cut') state.copied = true;
189
+ const path = event.composedPath().filter((node) => node.nodeType === 1);
190
+ if (path[0]) state.targets.add(path[0]);
191
+ path.forEach((node) => state.path.add(node));
192
+ if (!state.pressScroll && pressTypes.includes(event.type)) state.pressScroll = [scrollX, scrollY];
193
+ };
194
+ types.forEach((type) => window.addEventListener(type, record, true));
195
+ state.flush = () => count(observer.takeRecords());
196
+ state.stop = () => {
197
+ if (state.stopped) return;
198
+ state.stopped = true;
199
+ clearTimeout(expiry);
200
+ observer.disconnect();
201
+ if (Element.prototype.attachShadow === watchedAttach) Element.prototype.attachShadow = attachShadow;
202
+ types.forEach((type) => window.removeEventListener(type, record, true));
203
+ };
204
+ const expiry = setTimeout(state.stop, ${MAX_WATCH_MS});
205
+ window.__bdgEffects = state;
206
+ return { href: location.href, messages: (${MESSAGES_JS})(ids) };
207
+ })()`;
208
+ /**
209
+ * Read after an action (call with `true` to also stop watching): the URL,
210
+ * the messages shown and, when the snapshot is still there (same document),
211
+ * the number of changes counted (plus one when the page scrolled after the
212
+ * press) and why "no effect" could not be claimed ({@link UNCERTAIN_JS}).
213
+ * `fresh` means a new document (everything shown is new).
214
+ */
215
+ export const EFFECTS_READ_SCRIPT = `((stop) => {
216
+ const state = window.__bdgEffects;
217
+ if (!state) return { href: location.href, fresh: true, messages: (${MESSAGES_JS})({ map: new WeakMap(), next: 1 }) };
218
+ if (!state.stopped) state.flush();
219
+ if (stop) {
220
+ state.stop();
221
+ delete window.__bdgEffects;
222
+ }
223
+ const scrolled = state.pressScroll !== null && (state.pressScroll[0] !== scrollX || state.pressScroll[1] !== scrollY);
224
+ return {
225
+ href: location.href,
226
+ fresh: false,
227
+ changes: state.changes + (scrolled ? 1 : 0),
228
+ uncertain: (${UNCERTAIN_JS})(state, document.activeElement),
229
+ messages: (${MESSAGES_JS})(state.ids)
230
+ };
231
+ })`;
232
+ /** Stops the watch {@link EFFECTS_START_SCRIPT} left (when no read stopped it) */
233
+ export const EFFECTS_STOP_SCRIPT = 'if (window.__bdgEffects) { window.__bdgEffects.stop(); delete window.__bdgEffects; }';
234
+ //# sourceMappingURL=actionEffectsScripts.js.map