@browserbasehq/orca 3.4.0-preview.0 → 3.5.0-preview.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 (829) hide show
  1. package/dist/cjs/lib/inference.d.ts +2 -1
  2. package/dist/cjs/lib/inference.js +10 -3
  3. package/dist/cjs/lib/inference.js.map +1 -1
  4. package/dist/cjs/lib/prompt.d.ts +2 -2
  5. package/dist/cjs/lib/prompt.js +19 -4
  6. package/dist/cjs/lib/prompt.js.map +1 -1
  7. package/dist/cjs/lib/v3/agent/AgentProvider.d.ts +1 -1
  8. package/dist/cjs/lib/v3/agent/AgentProvider.js.map +1 -1
  9. package/dist/cjs/lib/v3/agent/AnthropicCUAClient.js +10 -0
  10. package/dist/cjs/lib/v3/agent/AnthropicCUAClient.js.map +1 -1
  11. package/dist/cjs/lib/v3/handlers/extractHandler.js +19 -2
  12. package/dist/cjs/lib/v3/handlers/extractHandler.js.map +1 -1
  13. package/dist/cjs/lib/v3/handlers/observeHandler.js +2 -1
  14. package/dist/cjs/lib/v3/handlers/observeHandler.js.map +1 -1
  15. package/dist/cjs/lib/v3/handlers/v3CuaAgentHandler.js +1 -0
  16. package/dist/cjs/lib/v3/handlers/v3CuaAgentHandler.js.map +1 -1
  17. package/dist/cjs/lib/v3/index.d.ts +1 -0
  18. package/dist/cjs/lib/v3/index.js.map +1 -1
  19. package/dist/cjs/lib/v3/launch/local.d.ts +2 -7
  20. package/dist/cjs/lib/v3/launch/local.js +47 -7
  21. package/dist/cjs/lib/v3/launch/local.js.map +1 -1
  22. package/dist/cjs/lib/v3/llm/aisdk.js +5 -0
  23. package/dist/cjs/lib/v3/llm/aisdk.js.map +1 -1
  24. package/dist/cjs/lib/v3/types/private/handlers.d.ts +2 -0
  25. package/dist/cjs/lib/v3/types/private/handlers.js.map +1 -1
  26. package/dist/cjs/lib/v3/types/private/snapshot.d.ts +2 -0
  27. package/dist/cjs/lib/v3/types/private/snapshot.js.map +1 -1
  28. package/dist/cjs/lib/v3/types/public/agent.d.ts +1 -1
  29. package/dist/cjs/lib/v3/types/public/agent.js.map +1 -1
  30. package/dist/cjs/lib/v3/types/public/api.d.ts +287 -0
  31. package/dist/cjs/lib/v3/types/public/api.js +61 -3
  32. package/dist/cjs/lib/v3/types/public/api.js.map +1 -1
  33. package/dist/cjs/lib/v3/types/public/methods.d.ts +2 -0
  34. package/dist/cjs/lib/v3/types/public/methods.js.map +1 -1
  35. package/dist/cjs/lib/v3/types/public/model.d.ts +11 -7
  36. package/dist/cjs/lib/v3/types/public/model.js.map +1 -1
  37. package/dist/cjs/lib/v3/understudy/a11y/snapshot/a11yTree.js +25 -0
  38. package/dist/cjs/lib/v3/understudy/a11y/snapshot/a11yTree.js.map +1 -1
  39. package/dist/cjs/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js +10 -1
  40. package/dist/cjs/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js.map +1 -1
  41. package/dist/cjs/lib/v3/v3.js +7 -47
  42. package/dist/cjs/lib/v3/v3.js.map +1 -1
  43. package/dist/cjs/lib/v3Evaluator.d.ts +20 -12
  44. package/dist/cjs/lib/v3Evaluator.js +41 -199
  45. package/dist/cjs/lib/v3Evaluator.js.map +1 -1
  46. package/dist/cjs/lib/v3LegacyEvaluator.d.ts +20 -0
  47. package/dist/cjs/lib/v3LegacyEvaluator.js +215 -0
  48. package/dist/cjs/lib/v3LegacyEvaluator.js.map +1 -0
  49. package/dist/cjs/lib/version.d.ts +1 -1
  50. package/dist/cjs/lib/version.js +1 -1
  51. package/dist/cjs/lib/version.js.map +1 -1
  52. package/dist/esm/lib/inference.d.ts +2 -1
  53. package/dist/esm/lib/inference.js +10 -3
  54. package/dist/esm/lib/inference.js.map +1 -1
  55. package/dist/esm/lib/prompt.d.ts +2 -2
  56. package/dist/esm/lib/prompt.js +19 -4
  57. package/dist/esm/lib/prompt.js.map +1 -1
  58. package/dist/esm/lib/v3/agent/AgentProvider.d.ts +1 -1
  59. package/dist/esm/lib/v3/agent/AgentProvider.js.map +1 -1
  60. package/dist/esm/lib/v3/agent/AnthropicCUAClient.js +10 -0
  61. package/dist/esm/lib/v3/agent/AnthropicCUAClient.js.map +1 -1
  62. package/dist/esm/lib/v3/handlers/extractHandler.js +19 -2
  63. package/dist/esm/lib/v3/handlers/extractHandler.js.map +1 -1
  64. package/dist/esm/lib/v3/handlers/observeHandler.js +2 -1
  65. package/dist/esm/lib/v3/handlers/observeHandler.js.map +1 -1
  66. package/dist/esm/lib/v3/handlers/v3CuaAgentHandler.js +1 -0
  67. package/dist/esm/lib/v3/handlers/v3CuaAgentHandler.js.map +1 -1
  68. package/dist/esm/lib/v3/index.d.ts +1 -0
  69. package/dist/esm/lib/v3/index.js.map +1 -1
  70. package/dist/esm/lib/v3/launch/local.d.ts +2 -7
  71. package/dist/esm/lib/v3/launch/local.js +48 -8
  72. package/dist/esm/lib/v3/launch/local.js.map +1 -1
  73. package/dist/esm/lib/v3/llm/aisdk.js +5 -0
  74. package/dist/esm/lib/v3/llm/aisdk.js.map +1 -1
  75. package/dist/esm/lib/v3/types/private/handlers.d.ts +2 -0
  76. package/dist/esm/lib/v3/types/private/handlers.js.map +1 -1
  77. package/dist/esm/lib/v3/types/private/snapshot.d.ts +2 -0
  78. package/dist/esm/lib/v3/types/private/snapshot.js.map +1 -1
  79. package/dist/esm/lib/v3/types/public/agent.d.ts +1 -1
  80. package/dist/esm/lib/v3/types/public/agent.js.map +1 -1
  81. package/dist/esm/lib/v3/types/public/api.d.ts +287 -0
  82. package/dist/esm/lib/v3/types/public/api.js +59 -1
  83. package/dist/esm/lib/v3/types/public/api.js.map +1 -1
  84. package/dist/esm/lib/v3/types/public/methods.d.ts +2 -0
  85. package/dist/esm/lib/v3/types/public/methods.js.map +1 -1
  86. package/dist/esm/lib/v3/types/public/model.d.ts +11 -7
  87. package/dist/esm/lib/v3/types/public/model.js.map +1 -1
  88. package/dist/esm/lib/v3/understudy/a11y/snapshot/a11yTree.js +25 -0
  89. package/dist/esm/lib/v3/understudy/a11y/snapshot/a11yTree.js.map +1 -1
  90. package/dist/esm/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js +10 -1
  91. package/dist/esm/lib/v3/understudy/a11y/snapshot/treeFormatUtils.js.map +1 -1
  92. package/dist/esm/lib/v3/v3.js +7 -47
  93. package/dist/esm/lib/v3/v3.js.map +1 -1
  94. package/dist/esm/lib/v3Evaluator.d.ts +20 -12
  95. package/dist/esm/lib/v3Evaluator.js +41 -199
  96. package/dist/esm/lib/v3Evaluator.js.map +1 -1
  97. package/dist/esm/lib/v3LegacyEvaluator.d.ts +20 -0
  98. package/dist/esm/lib/v3LegacyEvaluator.js +211 -0
  99. package/dist/esm/lib/v3LegacyEvaluator.js.map +1 -0
  100. package/dist/esm/lib/version.d.ts +1 -1
  101. package/dist/esm/lib/version.js +1 -1
  102. package/dist/esm/lib/version.js.map +1 -1
  103. package/package.json +30 -18
  104. package/dist/cjs/tests/cache-variables.test.d.ts +0 -1
  105. package/dist/cjs/tests/cache-variables.test.js +0 -221
  106. package/dist/cjs/tests/cache-variables.test.js.map +0 -1
  107. package/dist/cjs/tests/integration/agent-abort-signal.spec.d.ts +0 -1
  108. package/dist/cjs/tests/integration/agent-abort-signal.spec.js +0 -123
  109. package/dist/cjs/tests/integration/agent-abort-signal.spec.js.map +0 -1
  110. package/dist/cjs/tests/integration/agent-cache-self-heal.spec.d.ts +0 -1
  111. package/dist/cjs/tests/integration/agent-cache-self-heal.spec.js +0 -83
  112. package/dist/cjs/tests/integration/agent-cache-self-heal.spec.js.map +0 -1
  113. package/dist/cjs/tests/integration/agent-callbacks.spec.d.ts +0 -1
  114. package/dist/cjs/tests/integration/agent-callbacks.spec.js +0 -385
  115. package/dist/cjs/tests/integration/agent-callbacks.spec.js.map +0 -1
  116. package/dist/cjs/tests/integration/agent-experimental-validation.spec.d.ts +0 -1
  117. package/dist/cjs/tests/integration/agent-experimental-validation.spec.js +0 -362
  118. package/dist/cjs/tests/integration/agent-experimental-validation.spec.js.map +0 -1
  119. package/dist/cjs/tests/integration/agent-hybrid-mode.spec.d.ts +0 -1
  120. package/dist/cjs/tests/integration/agent-hybrid-mode.spec.js +0 -262
  121. package/dist/cjs/tests/integration/agent-hybrid-mode.spec.js.map +0 -1
  122. package/dist/cjs/tests/integration/agent-message-continuation.spec.d.ts +0 -1
  123. package/dist/cjs/tests/integration/agent-message-continuation.spec.js +0 -112
  124. package/dist/cjs/tests/integration/agent-message-continuation.spec.js.map +0 -1
  125. package/dist/cjs/tests/integration/agent-streaming.spec.d.ts +0 -1
  126. package/dist/cjs/tests/integration/agent-streaming.spec.js +0 -140
  127. package/dist/cjs/tests/integration/agent-streaming.spec.js.map +0 -1
  128. package/dist/cjs/tests/integration/cdp-close-api-region.spec.d.ts +0 -1
  129. package/dist/cjs/tests/integration/cdp-close-api-region.spec.js +0 -41
  130. package/dist/cjs/tests/integration/cdp-close-api-region.spec.js.map +0 -1
  131. package/dist/cjs/tests/integration/cdp-connection-close.spec.d.ts +0 -1
  132. package/dist/cjs/tests/integration/cdp-connection-close.spec.js +0 -76
  133. package/dist/cjs/tests/integration/cdp-connection-close.spec.js.map +0 -1
  134. package/dist/cjs/tests/integration/cdp-session-detached.spec.d.ts +0 -1
  135. package/dist/cjs/tests/integration/cdp-session-detached.spec.js +0 -45
  136. package/dist/cjs/tests/integration/cdp-session-detached.spec.js.map +0 -1
  137. package/dist/cjs/tests/integration/chrome-newtab-page-tracking.spec.d.ts +0 -1
  138. package/dist/cjs/tests/integration/chrome-newtab-page-tracking.spec.js +0 -56
  139. package/dist/cjs/tests/integration/chrome-newtab-page-tracking.spec.js.map +0 -1
  140. package/dist/cjs/tests/integration/click-count.spec.d.ts +0 -1
  141. package/dist/cjs/tests/integration/click-count.spec.js +0 -163
  142. package/dist/cjs/tests/integration/click-count.spec.js.map +0 -1
  143. package/dist/cjs/tests/integration/connect-to-existing-browser.spec.d.ts +0 -1
  144. package/dist/cjs/tests/integration/connect-to-existing-browser.spec.js +0 -99
  145. package/dist/cjs/tests/integration/connect-to-existing-browser.spec.js.map +0 -1
  146. package/dist/cjs/tests/integration/context-addInitScript.spec.d.ts +0 -1
  147. package/dist/cjs/tests/integration/context-addInitScript.spec.js +0 -285
  148. package/dist/cjs/tests/integration/context-addInitScript.spec.js.map +0 -1
  149. package/dist/cjs/tests/integration/context-extra-http-headers.spec.d.ts +0 -1
  150. package/dist/cjs/tests/integration/context-extra-http-headers.spec.js +0 -49
  151. package/dist/cjs/tests/integration/context-extra-http-headers.spec.js.map +0 -1
  152. package/dist/cjs/tests/integration/cookies.spec.d.ts +0 -1
  153. package/dist/cjs/tests/integration/cookies.spec.js +0 -187
  154. package/dist/cjs/tests/integration/cookies.spec.js.map +0 -1
  155. package/dist/cjs/tests/integration/default-page-tracking.spec.d.ts +0 -1
  156. package/dist/cjs/tests/integration/default-page-tracking.spec.js +0 -52
  157. package/dist/cjs/tests/integration/default-page-tracking.spec.js.map +0 -1
  158. package/dist/cjs/tests/integration/downloads.spec.d.ts +0 -1
  159. package/dist/cjs/tests/integration/downloads.spec.js +0 -52
  160. package/dist/cjs/tests/integration/downloads.spec.js.map +0 -1
  161. package/dist/cjs/tests/integration/flowLogger.spec.d.ts +0 -1
  162. package/dist/cjs/tests/integration/flowLogger.spec.js +0 -718
  163. package/dist/cjs/tests/integration/flowLogger.spec.js.map +0 -1
  164. package/dist/cjs/tests/integration/frame-get-location-and-click.spec.d.ts +0 -1
  165. package/dist/cjs/tests/integration/frame-get-location-and-click.spec.js +0 -57
  166. package/dist/cjs/tests/integration/frame-get-location-and-click.spec.js.map +0 -1
  167. package/dist/cjs/tests/integration/iframe-ctx-addInitScript-race.spec.d.ts +0 -1
  168. package/dist/cjs/tests/integration/iframe-ctx-addInitScript-race.spec.js +0 -219
  169. package/dist/cjs/tests/integration/iframe-ctx-addInitScript-race.spec.js.map +0 -1
  170. package/dist/cjs/tests/integration/iframe-ctx-addInitScript.spec.d.ts +0 -1
  171. package/dist/cjs/tests/integration/iframe-ctx-addInitScript.spec.js +0 -474
  172. package/dist/cjs/tests/integration/iframe-ctx-addInitScript.spec.js.map +0 -1
  173. package/dist/cjs/tests/integration/keep-alive.child.d.ts +0 -1
  174. package/dist/cjs/tests/integration/keep-alive.child.js +0 -85
  175. package/dist/cjs/tests/integration/keep-alive.child.js.map +0 -1
  176. package/dist/cjs/tests/integration/keep-alive.spec.d.ts +0 -22
  177. package/dist/cjs/tests/integration/keep-alive.spec.js +0 -490
  178. package/dist/cjs/tests/integration/keep-alive.spec.js.map +0 -1
  179. package/dist/cjs/tests/integration/keyboard.spec.d.ts +0 -1
  180. package/dist/cjs/tests/integration/keyboard.spec.js +0 -259
  181. package/dist/cjs/tests/integration/keyboard.spec.js.map +0 -1
  182. package/dist/cjs/tests/integration/locator-backend-node-id.spec.d.ts +0 -1
  183. package/dist/cjs/tests/integration/locator-backend-node-id.spec.js +0 -150
  184. package/dist/cjs/tests/integration/locator-backend-node-id.spec.js.map +0 -1
  185. package/dist/cjs/tests/integration/locator-content-methods.spec.d.ts +0 -1
  186. package/dist/cjs/tests/integration/locator-content-methods.spec.js +0 -180
  187. package/dist/cjs/tests/integration/locator-content-methods.spec.js.map +0 -1
  188. package/dist/cjs/tests/integration/locator-count-iframe.spec.d.ts +0 -1
  189. package/dist/cjs/tests/integration/locator-count-iframe.spec.js +0 -129
  190. package/dist/cjs/tests/integration/locator-count-iframe.spec.js.map +0 -1
  191. package/dist/cjs/tests/integration/locator-count.spec.d.ts +0 -1
  192. package/dist/cjs/tests/integration/locator-count.spec.js +0 -68
  193. package/dist/cjs/tests/integration/locator-count.spec.js.map +0 -1
  194. package/dist/cjs/tests/integration/locator-fill.spec.d.ts +0 -1
  195. package/dist/cjs/tests/integration/locator-fill.spec.js +0 -117
  196. package/dist/cjs/tests/integration/locator-fill.spec.js.map +0 -1
  197. package/dist/cjs/tests/integration/locator-input-methods.spec.d.ts +0 -1
  198. package/dist/cjs/tests/integration/locator-input-methods.spec.js +0 -127
  199. package/dist/cjs/tests/integration/locator-input-methods.spec.js.map +0 -1
  200. package/dist/cjs/tests/integration/locator-nth.spec.d.ts +0 -1
  201. package/dist/cjs/tests/integration/locator-nth.spec.js +0 -175
  202. package/dist/cjs/tests/integration/locator-nth.spec.js.map +0 -1
  203. package/dist/cjs/tests/integration/locator-select-option.spec.d.ts +0 -1
  204. package/dist/cjs/tests/integration/locator-select-option.spec.js +0 -216
  205. package/dist/cjs/tests/integration/locator-select-option.spec.js.map +0 -1
  206. package/dist/cjs/tests/integration/logger-initialization.spec.d.ts +0 -1
  207. package/dist/cjs/tests/integration/logger-initialization.spec.js +0 -597
  208. package/dist/cjs/tests/integration/logger-initialization.spec.js.map +0 -1
  209. package/dist/cjs/tests/integration/multi-instance-logger.spec.d.ts +0 -1
  210. package/dist/cjs/tests/integration/multi-instance-logger.spec.js +0 -293
  211. package/dist/cjs/tests/integration/multi-instance-logger.spec.js.map +0 -1
  212. package/dist/cjs/tests/integration/nested-div.spec.d.ts +0 -1
  213. package/dist/cjs/tests/integration/nested-div.spec.js +0 -22
  214. package/dist/cjs/tests/integration/nested-div.spec.js.map +0 -1
  215. package/dist/cjs/tests/integration/observe-element-id-format.spec.d.ts +0 -1
  216. package/dist/cjs/tests/integration/observe-element-id-format.spec.js +0 -130
  217. package/dist/cjs/tests/integration/observe-element-id-format.spec.js.map +0 -1
  218. package/dist/cjs/tests/integration/page-addInitScript.spec.d.ts +0 -1
  219. package/dist/cjs/tests/integration/page-addInitScript.spec.js +0 -94
  220. package/dist/cjs/tests/integration/page-addInitScript.spec.js.map +0 -1
  221. package/dist/cjs/tests/integration/page-console.spec.d.ts +0 -1
  222. package/dist/cjs/tests/integration/page-console.spec.js +0 -47
  223. package/dist/cjs/tests/integration/page-console.spec.js.map +0 -1
  224. package/dist/cjs/tests/integration/page-drag-and-drop.spec.d.ts +0 -1
  225. package/dist/cjs/tests/integration/page-drag-and-drop.spec.js +0 -437
  226. package/dist/cjs/tests/integration/page-drag-and-drop.spec.js.map +0 -1
  227. package/dist/cjs/tests/integration/page-extra-http-headers.spec.d.ts +0 -1
  228. package/dist/cjs/tests/integration/page-extra-http-headers.spec.js +0 -85
  229. package/dist/cjs/tests/integration/page-extra-http-headers.spec.js.map +0 -1
  230. package/dist/cjs/tests/integration/page-goto-response.spec.d.ts +0 -1
  231. package/dist/cjs/tests/integration/page-goto-response.spec.js +0 -34
  232. package/dist/cjs/tests/integration/page-goto-response.spec.js.map +0 -1
  233. package/dist/cjs/tests/integration/page-hover.spec.d.ts +0 -1
  234. package/dist/cjs/tests/integration/page-hover.spec.js +0 -165
  235. package/dist/cjs/tests/integration/page-hover.spec.js.map +0 -1
  236. package/dist/cjs/tests/integration/page-screenshot.spec.d.ts +0 -1
  237. package/dist/cjs/tests/integration/page-screenshot.spec.js +0 -292
  238. package/dist/cjs/tests/integration/page-screenshot.spec.js.map +0 -1
  239. package/dist/cjs/tests/integration/page-scroll.spec.d.ts +0 -1
  240. package/dist/cjs/tests/integration/page-scroll.spec.js +0 -183
  241. package/dist/cjs/tests/integration/page-scroll.spec.js.map +0 -1
  242. package/dist/cjs/tests/integration/page-send-cdp.spec.d.ts +0 -1
  243. package/dist/cjs/tests/integration/page-send-cdp.spec.js +0 -47
  244. package/dist/cjs/tests/integration/page-send-cdp.spec.js.map +0 -1
  245. package/dist/cjs/tests/integration/perform-understudy-method.spec.d.ts +0 -1
  246. package/dist/cjs/tests/integration/perform-understudy-method.spec.js +0 -63
  247. package/dist/cjs/tests/integration/perform-understudy-method.spec.js.map +0 -1
  248. package/dist/cjs/tests/integration/setinputfiles.spec.d.ts +0 -1
  249. package/dist/cjs/tests/integration/setinputfiles.spec.js +0 -133
  250. package/dist/cjs/tests/integration/setinputfiles.spec.js.map +0 -1
  251. package/dist/cjs/tests/integration/shadow-iframe-oopif.spec.d.ts +0 -1
  252. package/dist/cjs/tests/integration/shadow-iframe-oopif.spec.js +0 -161
  253. package/dist/cjs/tests/integration/shadow-iframe-oopif.spec.js.map +0 -1
  254. package/dist/cjs/tests/integration/shadow-iframe-spif.spec.d.ts +0 -1
  255. package/dist/cjs/tests/integration/shadow-iframe-spif.spec.js +0 -160
  256. package/dist/cjs/tests/integration/shadow-iframe-spif.spec.js.map +0 -1
  257. package/dist/cjs/tests/integration/testUtils.d.ts +0 -40
  258. package/dist/cjs/tests/integration/testUtils.js +0 -188
  259. package/dist/cjs/tests/integration/testUtils.js.map +0 -1
  260. package/dist/cjs/tests/integration/text-selector-innermost.spec.d.ts +0 -1
  261. package/dist/cjs/tests/integration/text-selector-innermost.spec.js +0 -105
  262. package/dist/cjs/tests/integration/text-selector-innermost.spec.js.map +0 -1
  263. package/dist/cjs/tests/integration/timeouts.spec.d.ts +0 -1
  264. package/dist/cjs/tests/integration/timeouts.spec.js +0 -309
  265. package/dist/cjs/tests/integration/timeouts.spec.js.map +0 -1
  266. package/dist/cjs/tests/integration/user-data-dir.spec.d.ts +0 -1
  267. package/dist/cjs/tests/integration/user-data-dir.spec.js +0 -77
  268. package/dist/cjs/tests/integration/user-data-dir.spec.js.map +0 -1
  269. package/dist/cjs/tests/integration/v3.config.d.ts +0 -4
  270. package/dist/cjs/tests/integration/v3.config.js +0 -11
  271. package/dist/cjs/tests/integration/v3.config.js.map +0 -1
  272. package/dist/cjs/tests/integration/v3.dynamic.config.d.ts +0 -4
  273. package/dist/cjs/tests/integration/v3.dynamic.config.js +0 -48
  274. package/dist/cjs/tests/integration/v3.dynamic.config.js.map +0 -1
  275. package/dist/cjs/tests/integration/v3.playwright.config.d.ts +0 -2
  276. package/dist/cjs/tests/integration/v3.playwright.config.js +0 -48
  277. package/dist/cjs/tests/integration/v3.playwright.config.js.map +0 -1
  278. package/dist/cjs/tests/integration/wait-for-selector.spec.d.ts +0 -1
  279. package/dist/cjs/tests/integration/wait-for-selector.spec.js +0 -683
  280. package/dist/cjs/tests/integration/wait-for-selector.spec.js.map +0 -1
  281. package/dist/cjs/tests/integration/wait-for-timeout.spec.d.ts +0 -1
  282. package/dist/cjs/tests/integration/wait-for-timeout.spec.js +0 -118
  283. package/dist/cjs/tests/integration/wait-for-timeout.spec.js.map +0 -1
  284. package/dist/cjs/tests/integration/xpath-for-location-deep.spec.d.ts +0 -1
  285. package/dist/cjs/tests/integration/xpath-for-location-deep.spec.js +0 -87
  286. package/dist/cjs/tests/integration/xpath-for-location-deep.spec.js.map +0 -1
  287. package/dist/cjs/tests/unit/agent-captcha-hooks.test.d.ts +0 -1
  288. package/dist/cjs/tests/unit/agent-captcha-hooks.test.js +0 -341
  289. package/dist/cjs/tests/unit/agent-captcha-hooks.test.js.map +0 -1
  290. package/dist/cjs/tests/unit/agent-execution-model.test.d.ts +0 -1
  291. package/dist/cjs/tests/unit/agent-execution-model.test.js +0 -150
  292. package/dist/cjs/tests/unit/agent-execution-model.test.js.map +0 -1
  293. package/dist/cjs/tests/unit/agent-metrics.test.d.ts +0 -1
  294. package/dist/cjs/tests/unit/agent-metrics.test.js +0 -112
  295. package/dist/cjs/tests/unit/agent-metrics.test.js.map +0 -1
  296. package/dist/cjs/tests/unit/agent-mode-routing.test.d.ts +0 -1
  297. package/dist/cjs/tests/unit/agent-mode-routing.test.js +0 -88
  298. package/dist/cjs/tests/unit/agent-mode-routing.test.js.map +0 -1
  299. package/dist/cjs/tests/unit/agent-system-prompt-variables.test.d.ts +0 -1
  300. package/dist/cjs/tests/unit/agent-system-prompt-variables.test.js +0 -23
  301. package/dist/cjs/tests/unit/agent-system-prompt-variables.test.js.map +0 -1
  302. package/dist/cjs/tests/unit/agent-temperature.test.d.ts +0 -1
  303. package/dist/cjs/tests/unit/agent-temperature.test.js +0 -191
  304. package/dist/cjs/tests/unit/agent-temperature.test.js.map +0 -1
  305. package/dist/cjs/tests/unit/agent-variables-validation.test.d.ts +0 -1
  306. package/dist/cjs/tests/unit/agent-variables-validation.test.js +0 -43
  307. package/dist/cjs/tests/unit/agent-variables-validation.test.js.map +0 -1
  308. package/dist/cjs/tests/unit/aisdk-clients.test.d.ts +0 -1
  309. package/dist/cjs/tests/unit/aisdk-clients.test.js +0 -86
  310. package/dist/cjs/tests/unit/aisdk-clients.test.js.map +0 -1
  311. package/dist/cjs/tests/unit/anthropic-cua-adaptive-thinking.test.d.ts +0 -1
  312. package/dist/cjs/tests/unit/anthropic-cua-adaptive-thinking.test.js +0 -250
  313. package/dist/cjs/tests/unit/anthropic-cua-adaptive-thinking.test.js.map +0 -1
  314. package/dist/cjs/tests/unit/api-client-observe-variables.test.d.ts +0 -1
  315. package/dist/cjs/tests/unit/api-client-observe-variables.test.js +0 -133
  316. package/dist/cjs/tests/unit/api-client-observe-variables.test.js.map +0 -1
  317. package/dist/cjs/tests/unit/api-multiregion.test.d.ts +0 -1
  318. package/dist/cjs/tests/unit/api-multiregion.test.js +0 -58
  319. package/dist/cjs/tests/unit/api-multiregion.test.js.map +0 -1
  320. package/dist/cjs/tests/unit/api-optional-model-api-key.test.d.ts +0 -1
  321. package/dist/cjs/tests/unit/api-optional-model-api-key.test.js +0 -155
  322. package/dist/cjs/tests/unit/api-optional-model-api-key.test.js.map +0 -1
  323. package/dist/cjs/tests/unit/api-variables-schema.test.d.ts +0 -1
  324. package/dist/cjs/tests/unit/api-variables-schema.test.js +0 -62
  325. package/dist/cjs/tests/unit/api-variables-schema.test.js.map +0 -1
  326. package/dist/cjs/tests/unit/browserbase-session-accessors.test.d.ts +0 -1
  327. package/dist/cjs/tests/unit/browserbase-session-accessors.test.js +0 -142
  328. package/dist/cjs/tests/unit/browserbase-session-accessors.test.js.map +0 -1
  329. package/dist/cjs/tests/unit/cache-llm-resolution.test.d.ts +0 -1
  330. package/dist/cjs/tests/unit/cache-llm-resolution.test.js +0 -186
  331. package/dist/cjs/tests/unit/cache-llm-resolution.test.js.map +0 -1
  332. package/dist/cjs/tests/unit/captcha-solver.test.d.ts +0 -1
  333. package/dist/cjs/tests/unit/captcha-solver.test.js +0 -154
  334. package/dist/cjs/tests/unit/captcha-solver.test.js.map +0 -1
  335. package/dist/cjs/tests/unit/cdp-connection-close.test.d.ts +0 -1
  336. package/dist/cjs/tests/unit/cdp-connection-close.test.js +0 -74
  337. package/dist/cjs/tests/unit/cdp-connection-close.test.js.map +0 -1
  338. package/dist/cjs/tests/unit/context-extra-http-headers.test.d.ts +0 -1
  339. package/dist/cjs/tests/unit/context-extra-http-headers.test.js +0 -58
  340. package/dist/cjs/tests/unit/context-extra-http-headers.test.js.map +0 -1
  341. package/dist/cjs/tests/unit/cookies.test.d.ts +0 -1
  342. package/dist/cjs/tests/unit/cookies.test.js +0 -944
  343. package/dist/cjs/tests/unit/cookies.test.js.map +0 -1
  344. package/dist/cjs/tests/unit/flowlogger-capturing-cdp.test.d.ts +0 -1
  345. package/dist/cjs/tests/unit/flowlogger-capturing-cdp.test.js +0 -95
  346. package/dist/cjs/tests/unit/flowlogger-capturing-cdp.test.js.map +0 -1
  347. package/dist/cjs/tests/unit/flowlogger-capturing-llm.test.d.ts +0 -1
  348. package/dist/cjs/tests/unit/flowlogger-capturing-llm.test.js +0 -43
  349. package/dist/cjs/tests/unit/flowlogger-capturing-llm.test.js.map +0 -1
  350. package/dist/cjs/tests/unit/flowlogger-eventstore.test.d.ts +0 -1
  351. package/dist/cjs/tests/unit/flowlogger-eventstore.test.js +0 -250
  352. package/dist/cjs/tests/unit/flowlogger-eventstore.test.js.map +0 -1
  353. package/dist/cjs/tests/unit/frame-registry-oopif-adoption.test.d.ts +0 -1
  354. package/dist/cjs/tests/unit/frame-registry-oopif-adoption.test.js +0 -60
  355. package/dist/cjs/tests/unit/frame-registry-oopif-adoption.test.js.map +0 -1
  356. package/dist/cjs/tests/unit/helpers/mockCDPSession.d.ts +0 -19
  357. package/dist/cjs/tests/unit/helpers/mockCDPSession.js +0 -29
  358. package/dist/cjs/tests/unit/helpers/mockCDPSession.js.map +0 -1
  359. package/dist/cjs/tests/unit/inference-temperature.test.d.ts +0 -1
  360. package/dist/cjs/tests/unit/inference-temperature.test.js +0 -65
  361. package/dist/cjs/tests/unit/inference-temperature.test.js.map +0 -1
  362. package/dist/cjs/tests/unit/llm-middleware.test.d.ts +0 -1
  363. package/dist/cjs/tests/unit/llm-middleware.test.js +0 -495
  364. package/dist/cjs/tests/unit/llm-middleware.test.js.map +0 -1
  365. package/dist/cjs/tests/unit/llm-provider.test.d.ts +0 -1
  366. package/dist/cjs/tests/unit/llm-provider.test.js +0 -64
  367. package/dist/cjs/tests/unit/llm-provider.test.js.map +0 -1
  368. package/dist/cjs/tests/unit/microsoft-cua-client.test.d.ts +0 -1
  369. package/dist/cjs/tests/unit/microsoft-cua-client.test.js +0 -86
  370. package/dist/cjs/tests/unit/microsoft-cua-client.test.js.map +0 -1
  371. package/dist/cjs/tests/unit/model-deprecation.test.d.ts +0 -1
  372. package/dist/cjs/tests/unit/model-deprecation.test.js +0 -142
  373. package/dist/cjs/tests/unit/model-deprecation.test.js.map +0 -1
  374. package/dist/cjs/tests/unit/model-utils.test.d.ts +0 -1
  375. package/dist/cjs/tests/unit/model-utils.test.js +0 -42
  376. package/dist/cjs/tests/unit/model-utils.test.js.map +0 -1
  377. package/dist/cjs/tests/unit/openai-compatible-temperature.test.d.ts +0 -1
  378. package/dist/cjs/tests/unit/openai-compatible-temperature.test.js +0 -84
  379. package/dist/cjs/tests/unit/openai-compatible-temperature.test.js.map +0 -1
  380. package/dist/cjs/tests/unit/openai-cua-client.test.d.ts +0 -1
  381. package/dist/cjs/tests/unit/openai-cua-client.test.js +0 -71
  382. package/dist/cjs/tests/unit/openai-cua-client.test.js.map +0 -1
  383. package/dist/cjs/tests/unit/page-extra-http-headers.test.d.ts +0 -1
  384. package/dist/cjs/tests/unit/page-extra-http-headers.test.js +0 -92
  385. package/dist/cjs/tests/unit/page-extra-http-headers.test.js.map +0 -1
  386. package/dist/cjs/tests/unit/page-snapshot.test.d.ts +0 -1
  387. package/dist/cjs/tests/unit/page-snapshot.test.js +0 -75
  388. package/dist/cjs/tests/unit/page-snapshot.test.js.map +0 -1
  389. package/dist/cjs/tests/unit/prompt-observe-variables.test.d.ts +0 -1
  390. package/dist/cjs/tests/unit/prompt-observe-variables.test.js +0 -25
  391. package/dist/cjs/tests/unit/prompt-observe-variables.test.js.map +0 -1
  392. package/dist/cjs/tests/unit/public-api/export-surface.test.d.ts +0 -1
  393. package/dist/cjs/tests/unit/public-api/export-surface.test.js +0 -107
  394. package/dist/cjs/tests/unit/public-api/export-surface.test.js.map +0 -1
  395. package/dist/cjs/tests/unit/public-api/llm-and-agents.test.d.ts +0 -1
  396. package/dist/cjs/tests/unit/public-api/llm-and-agents.test.js +0 -179
  397. package/dist/cjs/tests/unit/public-api/llm-and-agents.test.js.map +0 -1
  398. package/dist/cjs/tests/unit/public-api/public-error-types.test.d.ts +0 -62
  399. package/dist/cjs/tests/unit/public-api/public-error-types.test.js +0 -110
  400. package/dist/cjs/tests/unit/public-api/public-error-types.test.js.map +0 -1
  401. package/dist/cjs/tests/unit/public-api/public-types.test.d.ts +0 -1
  402. package/dist/cjs/tests/unit/public-api/public-types.test.js +0 -99
  403. package/dist/cjs/tests/unit/public-api/public-types.test.js.map +0 -1
  404. package/dist/cjs/tests/unit/public-api/runtime-utils.test.d.ts +0 -1
  405. package/dist/cjs/tests/unit/public-api/runtime-utils.test.js +0 -60
  406. package/dist/cjs/tests/unit/public-api/runtime-utils.test.js.map +0 -1
  407. package/dist/cjs/tests/unit/public-api/schema-utils.test.d.ts +0 -1
  408. package/dist/cjs/tests/unit/public-api/schema-utils.test.js +0 -95
  409. package/dist/cjs/tests/unit/public-api/schema-utils.test.js.map +0 -1
  410. package/dist/cjs/tests/unit/public-api/timeout-error-types.test.d.ts +0 -1
  411. package/dist/cjs/tests/unit/public-api/timeout-error-types.test.js +0 -121
  412. package/dist/cjs/tests/unit/public-api/timeout-error-types.test.js.map +0 -1
  413. package/dist/cjs/tests/unit/public-api/tool-type-export.test.d.ts +0 -1
  414. package/dist/cjs/tests/unit/public-api/tool-type-export.test.js +0 -65
  415. package/dist/cjs/tests/unit/public-api/tool-type-export.test.js.map +0 -1
  416. package/dist/cjs/tests/unit/public-api/v3-core.test.d.ts +0 -1
  417. package/dist/cjs/tests/unit/public-api/v3-core.test.js +0 -108
  418. package/dist/cjs/tests/unit/public-api/v3-core.test.js.map +0 -1
  419. package/dist/cjs/tests/unit/safety-confirmation.test.d.ts +0 -1
  420. package/dist/cjs/tests/unit/safety-confirmation.test.js +0 -110
  421. package/dist/cjs/tests/unit/safety-confirmation.test.js.map +0 -1
  422. package/dist/cjs/tests/unit/snapshot-a11y-resolvers.test.d.ts +0 -1
  423. package/dist/cjs/tests/unit/snapshot-a11y-resolvers.test.js +0 -431
  424. package/dist/cjs/tests/unit/snapshot-a11y-resolvers.test.js.map +0 -1
  425. package/dist/cjs/tests/unit/snapshot-a11y-tree-utils.test.d.ts +0 -1
  426. package/dist/cjs/tests/unit/snapshot-a11y-tree-utils.test.js +0 -306
  427. package/dist/cjs/tests/unit/snapshot-a11y-tree-utils.test.js.map +0 -1
  428. package/dist/cjs/tests/unit/snapshot-capture-orchestration.test.d.ts +0 -1
  429. package/dist/cjs/tests/unit/snapshot-capture-orchestration.test.js +0 -504
  430. package/dist/cjs/tests/unit/snapshot-capture-orchestration.test.js.map +0 -1
  431. package/dist/cjs/tests/unit/snapshot-cbor.test.d.ts +0 -1
  432. package/dist/cjs/tests/unit/snapshot-cbor.test.js +0 -204
  433. package/dist/cjs/tests/unit/snapshot-cbor.test.js.map +0 -1
  434. package/dist/cjs/tests/unit/snapshot-dom-session-builders.test.d.ts +0 -1
  435. package/dist/cjs/tests/unit/snapshot-dom-session-builders.test.js +0 -220
  436. package/dist/cjs/tests/unit/snapshot-dom-session-builders.test.js.map +0 -1
  437. package/dist/cjs/tests/unit/snapshot-dom-tree-utils.test.d.ts +0 -1
  438. package/dist/cjs/tests/unit/snapshot-dom-tree-utils.test.js +0 -107
  439. package/dist/cjs/tests/unit/snapshot-dom-tree-utils.test.js.map +0 -1
  440. package/dist/cjs/tests/unit/snapshot-focus-selectors-utils.test.d.ts +0 -1
  441. package/dist/cjs/tests/unit/snapshot-focus-selectors-utils.test.js +0 -89
  442. package/dist/cjs/tests/unit/snapshot-focus-selectors-utils.test.js.map +0 -1
  443. package/dist/cjs/tests/unit/snapshot-frame-merge.test.d.ts +0 -1
  444. package/dist/cjs/tests/unit/snapshot-frame-merge.test.js +0 -335
  445. package/dist/cjs/tests/unit/snapshot-frame-merge.test.js.map +0 -1
  446. package/dist/cjs/tests/unit/snapshot-tree-format-utils.test.d.ts +0 -1
  447. package/dist/cjs/tests/unit/snapshot-tree-format-utils.test.js +0 -84
  448. package/dist/cjs/tests/unit/snapshot-tree-format-utils.test.js.map +0 -1
  449. package/dist/cjs/tests/unit/snapshot-xpath-utils.test.d.ts +0 -1
  450. package/dist/cjs/tests/unit/snapshot-xpath-utils.test.js +0 -74
  451. package/dist/cjs/tests/unit/snapshot-xpath-utils.test.js.map +0 -1
  452. package/dist/cjs/tests/unit/timeout-handlers.test.d.ts +0 -1
  453. package/dist/cjs/tests/unit/timeout-handlers.test.js +0 -897
  454. package/dist/cjs/tests/unit/timeout-handlers.test.js.map +0 -1
  455. package/dist/cjs/tests/unit/understudy-command-exception.test.d.ts +0 -1
  456. package/dist/cjs/tests/unit/understudy-command-exception.test.js +0 -57
  457. package/dist/cjs/tests/unit/understudy-command-exception.test.js.map +0 -1
  458. package/dist/cjs/tests/unit/xpath-parser.test.d.ts +0 -1
  459. package/dist/cjs/tests/unit/xpath-parser.test.js +0 -311
  460. package/dist/cjs/tests/unit/xpath-parser.test.js.map +0 -1
  461. package/dist/cjs/tests/unit/xpath-resolver.test.d.ts +0 -1
  462. package/dist/cjs/tests/unit/xpath-resolver.test.js +0 -80
  463. package/dist/cjs/tests/unit/xpath-resolver.test.js.map +0 -1
  464. package/dist/cjs/tests/unit/zod-enum-compatibility.test.d.ts +0 -1
  465. package/dist/cjs/tests/unit/zod-enum-compatibility.test.js +0 -149
  466. package/dist/cjs/tests/unit/zod-enum-compatibility.test.js.map +0 -1
  467. package/dist/esm/tests/cache-variables.test.d.ts +0 -1
  468. package/dist/esm/tests/cache-variables.test.js +0 -219
  469. package/dist/esm/tests/cache-variables.test.js.map +0 -1
  470. package/dist/esm/tests/integration/agent-abort-signal.spec.d.ts +0 -1
  471. package/dist/esm/tests/integration/agent-abort-signal.spec.js +0 -121
  472. package/dist/esm/tests/integration/agent-abort-signal.spec.js.map +0 -1
  473. package/dist/esm/tests/integration/agent-cache-self-heal.spec.d.ts +0 -1
  474. package/dist/esm/tests/integration/agent-cache-self-heal.spec.js +0 -78
  475. package/dist/esm/tests/integration/agent-cache-self-heal.spec.js.map +0 -1
  476. package/dist/esm/tests/integration/agent-callbacks.spec.d.ts +0 -1
  477. package/dist/esm/tests/integration/agent-callbacks.spec.js +0 -383
  478. package/dist/esm/tests/integration/agent-callbacks.spec.js.map +0 -1
  479. package/dist/esm/tests/integration/agent-experimental-validation.spec.d.ts +0 -1
  480. package/dist/esm/tests/integration/agent-experimental-validation.spec.js +0 -360
  481. package/dist/esm/tests/integration/agent-experimental-validation.spec.js.map +0 -1
  482. package/dist/esm/tests/integration/agent-hybrid-mode.spec.d.ts +0 -1
  483. package/dist/esm/tests/integration/agent-hybrid-mode.spec.js +0 -260
  484. package/dist/esm/tests/integration/agent-hybrid-mode.spec.js.map +0 -1
  485. package/dist/esm/tests/integration/agent-message-continuation.spec.d.ts +0 -1
  486. package/dist/esm/tests/integration/agent-message-continuation.spec.js +0 -110
  487. package/dist/esm/tests/integration/agent-message-continuation.spec.js.map +0 -1
  488. package/dist/esm/tests/integration/agent-streaming.spec.d.ts +0 -1
  489. package/dist/esm/tests/integration/agent-streaming.spec.js +0 -138
  490. package/dist/esm/tests/integration/agent-streaming.spec.js.map +0 -1
  491. package/dist/esm/tests/integration/cdp-close-api-region.spec.d.ts +0 -1
  492. package/dist/esm/tests/integration/cdp-close-api-region.spec.js +0 -39
  493. package/dist/esm/tests/integration/cdp-close-api-region.spec.js.map +0 -1
  494. package/dist/esm/tests/integration/cdp-connection-close.spec.d.ts +0 -1
  495. package/dist/esm/tests/integration/cdp-connection-close.spec.js +0 -74
  496. package/dist/esm/tests/integration/cdp-connection-close.spec.js.map +0 -1
  497. package/dist/esm/tests/integration/cdp-session-detached.spec.d.ts +0 -1
  498. package/dist/esm/tests/integration/cdp-session-detached.spec.js +0 -43
  499. package/dist/esm/tests/integration/cdp-session-detached.spec.js.map +0 -1
  500. package/dist/esm/tests/integration/chrome-newtab-page-tracking.spec.d.ts +0 -1
  501. package/dist/esm/tests/integration/chrome-newtab-page-tracking.spec.js +0 -54
  502. package/dist/esm/tests/integration/chrome-newtab-page-tracking.spec.js.map +0 -1
  503. package/dist/esm/tests/integration/click-count.spec.d.ts +0 -1
  504. package/dist/esm/tests/integration/click-count.spec.js +0 -161
  505. package/dist/esm/tests/integration/click-count.spec.js.map +0 -1
  506. package/dist/esm/tests/integration/connect-to-existing-browser.spec.d.ts +0 -1
  507. package/dist/esm/tests/integration/connect-to-existing-browser.spec.js +0 -97
  508. package/dist/esm/tests/integration/connect-to-existing-browser.spec.js.map +0 -1
  509. package/dist/esm/tests/integration/context-addInitScript.spec.d.ts +0 -1
  510. package/dist/esm/tests/integration/context-addInitScript.spec.js +0 -283
  511. package/dist/esm/tests/integration/context-addInitScript.spec.js.map +0 -1
  512. package/dist/esm/tests/integration/context-extra-http-headers.spec.d.ts +0 -1
  513. package/dist/esm/tests/integration/context-extra-http-headers.spec.js +0 -47
  514. package/dist/esm/tests/integration/context-extra-http-headers.spec.js.map +0 -1
  515. package/dist/esm/tests/integration/cookies.spec.d.ts +0 -1
  516. package/dist/esm/tests/integration/cookies.spec.js +0 -185
  517. package/dist/esm/tests/integration/cookies.spec.js.map +0 -1
  518. package/dist/esm/tests/integration/default-page-tracking.spec.d.ts +0 -1
  519. package/dist/esm/tests/integration/default-page-tracking.spec.js +0 -50
  520. package/dist/esm/tests/integration/default-page-tracking.spec.js.map +0 -1
  521. package/dist/esm/tests/integration/downloads.spec.d.ts +0 -1
  522. package/dist/esm/tests/integration/downloads.spec.js +0 -47
  523. package/dist/esm/tests/integration/downloads.spec.js.map +0 -1
  524. package/dist/esm/tests/integration/flowLogger.spec.d.ts +0 -1
  525. package/dist/esm/tests/integration/flowLogger.spec.js +0 -716
  526. package/dist/esm/tests/integration/flowLogger.spec.js.map +0 -1
  527. package/dist/esm/tests/integration/frame-get-location-and-click.spec.d.ts +0 -1
  528. package/dist/esm/tests/integration/frame-get-location-and-click.spec.js +0 -55
  529. package/dist/esm/tests/integration/frame-get-location-and-click.spec.js.map +0 -1
  530. package/dist/esm/tests/integration/iframe-ctx-addInitScript-race.spec.d.ts +0 -1
  531. package/dist/esm/tests/integration/iframe-ctx-addInitScript-race.spec.js +0 -217
  532. package/dist/esm/tests/integration/iframe-ctx-addInitScript-race.spec.js.map +0 -1
  533. package/dist/esm/tests/integration/iframe-ctx-addInitScript.spec.d.ts +0 -1
  534. package/dist/esm/tests/integration/iframe-ctx-addInitScript.spec.js +0 -472
  535. package/dist/esm/tests/integration/iframe-ctx-addInitScript.spec.js.map +0 -1
  536. package/dist/esm/tests/integration/keep-alive.child.d.ts +0 -1
  537. package/dist/esm/tests/integration/keep-alive.child.js +0 -83
  538. package/dist/esm/tests/integration/keep-alive.child.js.map +0 -1
  539. package/dist/esm/tests/integration/keep-alive.spec.d.ts +0 -22
  540. package/dist/esm/tests/integration/keep-alive.spec.js +0 -482
  541. package/dist/esm/tests/integration/keep-alive.spec.js.map +0 -1
  542. package/dist/esm/tests/integration/keyboard.spec.d.ts +0 -1
  543. package/dist/esm/tests/integration/keyboard.spec.js +0 -257
  544. package/dist/esm/tests/integration/keyboard.spec.js.map +0 -1
  545. package/dist/esm/tests/integration/locator-backend-node-id.spec.d.ts +0 -1
  546. package/dist/esm/tests/integration/locator-backend-node-id.spec.js +0 -148
  547. package/dist/esm/tests/integration/locator-backend-node-id.spec.js.map +0 -1
  548. package/dist/esm/tests/integration/locator-content-methods.spec.d.ts +0 -1
  549. package/dist/esm/tests/integration/locator-content-methods.spec.js +0 -178
  550. package/dist/esm/tests/integration/locator-content-methods.spec.js.map +0 -1
  551. package/dist/esm/tests/integration/locator-count-iframe.spec.d.ts +0 -1
  552. package/dist/esm/tests/integration/locator-count-iframe.spec.js +0 -127
  553. package/dist/esm/tests/integration/locator-count-iframe.spec.js.map +0 -1
  554. package/dist/esm/tests/integration/locator-count.spec.d.ts +0 -1
  555. package/dist/esm/tests/integration/locator-count.spec.js +0 -66
  556. package/dist/esm/tests/integration/locator-count.spec.js.map +0 -1
  557. package/dist/esm/tests/integration/locator-fill.spec.d.ts +0 -1
  558. package/dist/esm/tests/integration/locator-fill.spec.js +0 -115
  559. package/dist/esm/tests/integration/locator-fill.spec.js.map +0 -1
  560. package/dist/esm/tests/integration/locator-input-methods.spec.d.ts +0 -1
  561. package/dist/esm/tests/integration/locator-input-methods.spec.js +0 -125
  562. package/dist/esm/tests/integration/locator-input-methods.spec.js.map +0 -1
  563. package/dist/esm/tests/integration/locator-nth.spec.d.ts +0 -1
  564. package/dist/esm/tests/integration/locator-nth.spec.js +0 -173
  565. package/dist/esm/tests/integration/locator-nth.spec.js.map +0 -1
  566. package/dist/esm/tests/integration/locator-select-option.spec.d.ts +0 -1
  567. package/dist/esm/tests/integration/locator-select-option.spec.js +0 -214
  568. package/dist/esm/tests/integration/locator-select-option.spec.js.map +0 -1
  569. package/dist/esm/tests/integration/logger-initialization.spec.d.ts +0 -1
  570. package/dist/esm/tests/integration/logger-initialization.spec.js +0 -595
  571. package/dist/esm/tests/integration/logger-initialization.spec.js.map +0 -1
  572. package/dist/esm/tests/integration/multi-instance-logger.spec.d.ts +0 -1
  573. package/dist/esm/tests/integration/multi-instance-logger.spec.js +0 -291
  574. package/dist/esm/tests/integration/multi-instance-logger.spec.js.map +0 -1
  575. package/dist/esm/tests/integration/nested-div.spec.d.ts +0 -1
  576. package/dist/esm/tests/integration/nested-div.spec.js +0 -20
  577. package/dist/esm/tests/integration/nested-div.spec.js.map +0 -1
  578. package/dist/esm/tests/integration/observe-element-id-format.spec.d.ts +0 -1
  579. package/dist/esm/tests/integration/observe-element-id-format.spec.js +0 -128
  580. package/dist/esm/tests/integration/observe-element-id-format.spec.js.map +0 -1
  581. package/dist/esm/tests/integration/page-addInitScript.spec.d.ts +0 -1
  582. package/dist/esm/tests/integration/page-addInitScript.spec.js +0 -92
  583. package/dist/esm/tests/integration/page-addInitScript.spec.js.map +0 -1
  584. package/dist/esm/tests/integration/page-console.spec.d.ts +0 -1
  585. package/dist/esm/tests/integration/page-console.spec.js +0 -45
  586. package/dist/esm/tests/integration/page-console.spec.js.map +0 -1
  587. package/dist/esm/tests/integration/page-drag-and-drop.spec.d.ts +0 -1
  588. package/dist/esm/tests/integration/page-drag-and-drop.spec.js +0 -435
  589. package/dist/esm/tests/integration/page-drag-and-drop.spec.js.map +0 -1
  590. package/dist/esm/tests/integration/page-extra-http-headers.spec.d.ts +0 -1
  591. package/dist/esm/tests/integration/page-extra-http-headers.spec.js +0 -83
  592. package/dist/esm/tests/integration/page-extra-http-headers.spec.js.map +0 -1
  593. package/dist/esm/tests/integration/page-goto-response.spec.d.ts +0 -1
  594. package/dist/esm/tests/integration/page-goto-response.spec.js +0 -32
  595. package/dist/esm/tests/integration/page-goto-response.spec.js.map +0 -1
  596. package/dist/esm/tests/integration/page-hover.spec.d.ts +0 -1
  597. package/dist/esm/tests/integration/page-hover.spec.js +0 -163
  598. package/dist/esm/tests/integration/page-hover.spec.js.map +0 -1
  599. package/dist/esm/tests/integration/page-screenshot.spec.d.ts +0 -1
  600. package/dist/esm/tests/integration/page-screenshot.spec.js +0 -257
  601. package/dist/esm/tests/integration/page-screenshot.spec.js.map +0 -1
  602. package/dist/esm/tests/integration/page-scroll.spec.d.ts +0 -1
  603. package/dist/esm/tests/integration/page-scroll.spec.js +0 -181
  604. package/dist/esm/tests/integration/page-scroll.spec.js.map +0 -1
  605. package/dist/esm/tests/integration/page-send-cdp.spec.d.ts +0 -1
  606. package/dist/esm/tests/integration/page-send-cdp.spec.js +0 -45
  607. package/dist/esm/tests/integration/page-send-cdp.spec.js.map +0 -1
  608. package/dist/esm/tests/integration/perform-understudy-method.spec.d.ts +0 -1
  609. package/dist/esm/tests/integration/perform-understudy-method.spec.js +0 -61
  610. package/dist/esm/tests/integration/perform-understudy-method.spec.js.map +0 -1
  611. package/dist/esm/tests/integration/setinputfiles.spec.d.ts +0 -1
  612. package/dist/esm/tests/integration/setinputfiles.spec.js +0 -128
  613. package/dist/esm/tests/integration/setinputfiles.spec.js.map +0 -1
  614. package/dist/esm/tests/integration/shadow-iframe-oopif.spec.d.ts +0 -1
  615. package/dist/esm/tests/integration/shadow-iframe-oopif.spec.js +0 -156
  616. package/dist/esm/tests/integration/shadow-iframe-oopif.spec.js.map +0 -1
  617. package/dist/esm/tests/integration/shadow-iframe-spif.spec.d.ts +0 -1
  618. package/dist/esm/tests/integration/shadow-iframe-spif.spec.js +0 -155
  619. package/dist/esm/tests/integration/shadow-iframe-spif.spec.js.map +0 -1
  620. package/dist/esm/tests/integration/testUtils.d.ts +0 -40
  621. package/dist/esm/tests/integration/testUtils.js +0 -178
  622. package/dist/esm/tests/integration/testUtils.js.map +0 -1
  623. package/dist/esm/tests/integration/text-selector-innermost.spec.d.ts +0 -1
  624. package/dist/esm/tests/integration/text-selector-innermost.spec.js +0 -103
  625. package/dist/esm/tests/integration/text-selector-innermost.spec.js.map +0 -1
  626. package/dist/esm/tests/integration/timeouts.spec.d.ts +0 -1
  627. package/dist/esm/tests/integration/timeouts.spec.js +0 -307
  628. package/dist/esm/tests/integration/timeouts.spec.js.map +0 -1
  629. package/dist/esm/tests/integration/user-data-dir.spec.d.ts +0 -1
  630. package/dist/esm/tests/integration/user-data-dir.spec.js +0 -42
  631. package/dist/esm/tests/integration/user-data-dir.spec.js.map +0 -1
  632. package/dist/esm/tests/integration/v3.config.d.ts +0 -4
  633. package/dist/esm/tests/integration/v3.config.js +0 -7
  634. package/dist/esm/tests/integration/v3.config.js.map +0 -1
  635. package/dist/esm/tests/integration/v3.dynamic.config.d.ts +0 -4
  636. package/dist/esm/tests/integration/v3.dynamic.config.js +0 -44
  637. package/dist/esm/tests/integration/v3.dynamic.config.js.map +0 -1
  638. package/dist/esm/tests/integration/v3.playwright.config.d.ts +0 -2
  639. package/dist/esm/tests/integration/v3.playwright.config.js +0 -46
  640. package/dist/esm/tests/integration/v3.playwright.config.js.map +0 -1
  641. package/dist/esm/tests/integration/wait-for-selector.spec.d.ts +0 -1
  642. package/dist/esm/tests/integration/wait-for-selector.spec.js +0 -681
  643. package/dist/esm/tests/integration/wait-for-selector.spec.js.map +0 -1
  644. package/dist/esm/tests/integration/wait-for-timeout.spec.d.ts +0 -1
  645. package/dist/esm/tests/integration/wait-for-timeout.spec.js +0 -116
  646. package/dist/esm/tests/integration/wait-for-timeout.spec.js.map +0 -1
  647. package/dist/esm/tests/integration/xpath-for-location-deep.spec.d.ts +0 -1
  648. package/dist/esm/tests/integration/xpath-for-location-deep.spec.js +0 -85
  649. package/dist/esm/tests/integration/xpath-for-location-deep.spec.js.map +0 -1
  650. package/dist/esm/tests/unit/agent-captcha-hooks.test.d.ts +0 -1
  651. package/dist/esm/tests/unit/agent-captcha-hooks.test.js +0 -339
  652. package/dist/esm/tests/unit/agent-captcha-hooks.test.js.map +0 -1
  653. package/dist/esm/tests/unit/agent-execution-model.test.d.ts +0 -1
  654. package/dist/esm/tests/unit/agent-execution-model.test.js +0 -148
  655. package/dist/esm/tests/unit/agent-execution-model.test.js.map +0 -1
  656. package/dist/esm/tests/unit/agent-metrics.test.d.ts +0 -1
  657. package/dist/esm/tests/unit/agent-metrics.test.js +0 -110
  658. package/dist/esm/tests/unit/agent-metrics.test.js.map +0 -1
  659. package/dist/esm/tests/unit/agent-mode-routing.test.d.ts +0 -1
  660. package/dist/esm/tests/unit/agent-mode-routing.test.js +0 -86
  661. package/dist/esm/tests/unit/agent-mode-routing.test.js.map +0 -1
  662. package/dist/esm/tests/unit/agent-system-prompt-variables.test.d.ts +0 -1
  663. package/dist/esm/tests/unit/agent-system-prompt-variables.test.js +0 -21
  664. package/dist/esm/tests/unit/agent-system-prompt-variables.test.js.map +0 -1
  665. package/dist/esm/tests/unit/agent-temperature.test.d.ts +0 -1
  666. package/dist/esm/tests/unit/agent-temperature.test.js +0 -189
  667. package/dist/esm/tests/unit/agent-temperature.test.js.map +0 -1
  668. package/dist/esm/tests/unit/agent-variables-validation.test.d.ts +0 -1
  669. package/dist/esm/tests/unit/agent-variables-validation.test.js +0 -41
  670. package/dist/esm/tests/unit/agent-variables-validation.test.js.map +0 -1
  671. package/dist/esm/tests/unit/aisdk-clients.test.d.ts +0 -1
  672. package/dist/esm/tests/unit/aisdk-clients.test.js +0 -84
  673. package/dist/esm/tests/unit/aisdk-clients.test.js.map +0 -1
  674. package/dist/esm/tests/unit/anthropic-cua-adaptive-thinking.test.d.ts +0 -1
  675. package/dist/esm/tests/unit/anthropic-cua-adaptive-thinking.test.js +0 -245
  676. package/dist/esm/tests/unit/anthropic-cua-adaptive-thinking.test.js.map +0 -1
  677. package/dist/esm/tests/unit/api-client-observe-variables.test.d.ts +0 -1
  678. package/dist/esm/tests/unit/api-client-observe-variables.test.js +0 -131
  679. package/dist/esm/tests/unit/api-client-observe-variables.test.js.map +0 -1
  680. package/dist/esm/tests/unit/api-multiregion.test.d.ts +0 -1
  681. package/dist/esm/tests/unit/api-multiregion.test.js +0 -56
  682. package/dist/esm/tests/unit/api-multiregion.test.js.map +0 -1
  683. package/dist/esm/tests/unit/api-optional-model-api-key.test.d.ts +0 -1
  684. package/dist/esm/tests/unit/api-optional-model-api-key.test.js +0 -153
  685. package/dist/esm/tests/unit/api-optional-model-api-key.test.js.map +0 -1
  686. package/dist/esm/tests/unit/api-variables-schema.test.d.ts +0 -1
  687. package/dist/esm/tests/unit/api-variables-schema.test.js +0 -60
  688. package/dist/esm/tests/unit/api-variables-schema.test.js.map +0 -1
  689. package/dist/esm/tests/unit/browserbase-session-accessors.test.d.ts +0 -1
  690. package/dist/esm/tests/unit/browserbase-session-accessors.test.js +0 -140
  691. package/dist/esm/tests/unit/browserbase-session-accessors.test.js.map +0 -1
  692. package/dist/esm/tests/unit/cache-llm-resolution.test.d.ts +0 -1
  693. package/dist/esm/tests/unit/cache-llm-resolution.test.js +0 -184
  694. package/dist/esm/tests/unit/cache-llm-resolution.test.js.map +0 -1
  695. package/dist/esm/tests/unit/captcha-solver.test.d.ts +0 -1
  696. package/dist/esm/tests/unit/captcha-solver.test.js +0 -152
  697. package/dist/esm/tests/unit/captcha-solver.test.js.map +0 -1
  698. package/dist/esm/tests/unit/cdp-connection-close.test.d.ts +0 -1
  699. package/dist/esm/tests/unit/cdp-connection-close.test.js +0 -72
  700. package/dist/esm/tests/unit/cdp-connection-close.test.js.map +0 -1
  701. package/dist/esm/tests/unit/context-extra-http-headers.test.d.ts +0 -1
  702. package/dist/esm/tests/unit/context-extra-http-headers.test.js +0 -56
  703. package/dist/esm/tests/unit/context-extra-http-headers.test.js.map +0 -1
  704. package/dist/esm/tests/unit/cookies.test.d.ts +0 -1
  705. package/dist/esm/tests/unit/cookies.test.js +0 -909
  706. package/dist/esm/tests/unit/cookies.test.js.map +0 -1
  707. package/dist/esm/tests/unit/flowlogger-capturing-cdp.test.d.ts +0 -1
  708. package/dist/esm/tests/unit/flowlogger-capturing-cdp.test.js +0 -93
  709. package/dist/esm/tests/unit/flowlogger-capturing-cdp.test.js.map +0 -1
  710. package/dist/esm/tests/unit/flowlogger-capturing-llm.test.d.ts +0 -1
  711. package/dist/esm/tests/unit/flowlogger-capturing-llm.test.js +0 -41
  712. package/dist/esm/tests/unit/flowlogger-capturing-llm.test.js.map +0 -1
  713. package/dist/esm/tests/unit/flowlogger-eventstore.test.d.ts +0 -1
  714. package/dist/esm/tests/unit/flowlogger-eventstore.test.js +0 -248
  715. package/dist/esm/tests/unit/flowlogger-eventstore.test.js.map +0 -1
  716. package/dist/esm/tests/unit/frame-registry-oopif-adoption.test.d.ts +0 -1
  717. package/dist/esm/tests/unit/frame-registry-oopif-adoption.test.js +0 -58
  718. package/dist/esm/tests/unit/frame-registry-oopif-adoption.test.js.map +0 -1
  719. package/dist/esm/tests/unit/helpers/mockCDPSession.d.ts +0 -19
  720. package/dist/esm/tests/unit/helpers/mockCDPSession.js +0 -25
  721. package/dist/esm/tests/unit/helpers/mockCDPSession.js.map +0 -1
  722. package/dist/esm/tests/unit/inference-temperature.test.d.ts +0 -1
  723. package/dist/esm/tests/unit/inference-temperature.test.js +0 -63
  724. package/dist/esm/tests/unit/inference-temperature.test.js.map +0 -1
  725. package/dist/esm/tests/unit/llm-middleware.test.d.ts +0 -1
  726. package/dist/esm/tests/unit/llm-middleware.test.js +0 -460
  727. package/dist/esm/tests/unit/llm-middleware.test.js.map +0 -1
  728. package/dist/esm/tests/unit/llm-provider.test.d.ts +0 -1
  729. package/dist/esm/tests/unit/llm-provider.test.js +0 -62
  730. package/dist/esm/tests/unit/llm-provider.test.js.map +0 -1
  731. package/dist/esm/tests/unit/microsoft-cua-client.test.d.ts +0 -1
  732. package/dist/esm/tests/unit/microsoft-cua-client.test.js +0 -84
  733. package/dist/esm/tests/unit/microsoft-cua-client.test.js.map +0 -1
  734. package/dist/esm/tests/unit/model-deprecation.test.d.ts +0 -1
  735. package/dist/esm/tests/unit/model-deprecation.test.js +0 -140
  736. package/dist/esm/tests/unit/model-deprecation.test.js.map +0 -1
  737. package/dist/esm/tests/unit/model-utils.test.d.ts +0 -1
  738. package/dist/esm/tests/unit/model-utils.test.js +0 -40
  739. package/dist/esm/tests/unit/model-utils.test.js.map +0 -1
  740. package/dist/esm/tests/unit/openai-compatible-temperature.test.d.ts +0 -1
  741. package/dist/esm/tests/unit/openai-compatible-temperature.test.js +0 -82
  742. package/dist/esm/tests/unit/openai-compatible-temperature.test.js.map +0 -1
  743. package/dist/esm/tests/unit/openai-cua-client.test.d.ts +0 -1
  744. package/dist/esm/tests/unit/openai-cua-client.test.js +0 -69
  745. package/dist/esm/tests/unit/openai-cua-client.test.js.map +0 -1
  746. package/dist/esm/tests/unit/page-extra-http-headers.test.d.ts +0 -1
  747. package/dist/esm/tests/unit/page-extra-http-headers.test.js +0 -90
  748. package/dist/esm/tests/unit/page-extra-http-headers.test.js.map +0 -1
  749. package/dist/esm/tests/unit/page-snapshot.test.d.ts +0 -1
  750. package/dist/esm/tests/unit/page-snapshot.test.js +0 -40
  751. package/dist/esm/tests/unit/page-snapshot.test.js.map +0 -1
  752. package/dist/esm/tests/unit/prompt-observe-variables.test.d.ts +0 -1
  753. package/dist/esm/tests/unit/prompt-observe-variables.test.js +0 -23
  754. package/dist/esm/tests/unit/prompt-observe-variables.test.js.map +0 -1
  755. package/dist/esm/tests/unit/public-api/export-surface.test.d.ts +0 -1
  756. package/dist/esm/tests/unit/public-api/export-surface.test.js +0 -72
  757. package/dist/esm/tests/unit/public-api/export-surface.test.js.map +0 -1
  758. package/dist/esm/tests/unit/public-api/llm-and-agents.test.d.ts +0 -1
  759. package/dist/esm/tests/unit/public-api/llm-and-agents.test.js +0 -144
  760. package/dist/esm/tests/unit/public-api/llm-and-agents.test.js.map +0 -1
  761. package/dist/esm/tests/unit/public-api/public-error-types.test.d.ts +0 -62
  762. package/dist/esm/tests/unit/public-api/public-error-types.test.js +0 -74
  763. package/dist/esm/tests/unit/public-api/public-error-types.test.js.map +0 -1
  764. package/dist/esm/tests/unit/public-api/public-types.test.d.ts +0 -1
  765. package/dist/esm/tests/unit/public-api/public-types.test.js +0 -97
  766. package/dist/esm/tests/unit/public-api/public-types.test.js.map +0 -1
  767. package/dist/esm/tests/unit/public-api/runtime-utils.test.d.ts +0 -1
  768. package/dist/esm/tests/unit/public-api/runtime-utils.test.js +0 -25
  769. package/dist/esm/tests/unit/public-api/runtime-utils.test.js.map +0 -1
  770. package/dist/esm/tests/unit/public-api/schema-utils.test.d.ts +0 -1
  771. package/dist/esm/tests/unit/public-api/schema-utils.test.js +0 -60
  772. package/dist/esm/tests/unit/public-api/schema-utils.test.js.map +0 -1
  773. package/dist/esm/tests/unit/public-api/timeout-error-types.test.d.ts +0 -1
  774. package/dist/esm/tests/unit/public-api/timeout-error-types.test.js +0 -86
  775. package/dist/esm/tests/unit/public-api/timeout-error-types.test.js.map +0 -1
  776. package/dist/esm/tests/unit/public-api/tool-type-export.test.d.ts +0 -1
  777. package/dist/esm/tests/unit/public-api/tool-type-export.test.js +0 -30
  778. package/dist/esm/tests/unit/public-api/tool-type-export.test.js.map +0 -1
  779. package/dist/esm/tests/unit/public-api/v3-core.test.d.ts +0 -1
  780. package/dist/esm/tests/unit/public-api/v3-core.test.js +0 -73
  781. package/dist/esm/tests/unit/public-api/v3-core.test.js.map +0 -1
  782. package/dist/esm/tests/unit/safety-confirmation.test.d.ts +0 -1
  783. package/dist/esm/tests/unit/safety-confirmation.test.js +0 -108
  784. package/dist/esm/tests/unit/safety-confirmation.test.js.map +0 -1
  785. package/dist/esm/tests/unit/snapshot-a11y-resolvers.test.d.ts +0 -1
  786. package/dist/esm/tests/unit/snapshot-a11y-resolvers.test.js +0 -396
  787. package/dist/esm/tests/unit/snapshot-a11y-resolvers.test.js.map +0 -1
  788. package/dist/esm/tests/unit/snapshot-a11y-tree-utils.test.d.ts +0 -1
  789. package/dist/esm/tests/unit/snapshot-a11y-tree-utils.test.js +0 -304
  790. package/dist/esm/tests/unit/snapshot-a11y-tree-utils.test.js.map +0 -1
  791. package/dist/esm/tests/unit/snapshot-capture-orchestration.test.d.ts +0 -1
  792. package/dist/esm/tests/unit/snapshot-capture-orchestration.test.js +0 -469
  793. package/dist/esm/tests/unit/snapshot-capture-orchestration.test.js.map +0 -1
  794. package/dist/esm/tests/unit/snapshot-cbor.test.d.ts +0 -1
  795. package/dist/esm/tests/unit/snapshot-cbor.test.js +0 -202
  796. package/dist/esm/tests/unit/snapshot-cbor.test.js.map +0 -1
  797. package/dist/esm/tests/unit/snapshot-dom-session-builders.test.d.ts +0 -1
  798. package/dist/esm/tests/unit/snapshot-dom-session-builders.test.js +0 -218
  799. package/dist/esm/tests/unit/snapshot-dom-session-builders.test.js.map +0 -1
  800. package/dist/esm/tests/unit/snapshot-dom-tree-utils.test.d.ts +0 -1
  801. package/dist/esm/tests/unit/snapshot-dom-tree-utils.test.js +0 -105
  802. package/dist/esm/tests/unit/snapshot-dom-tree-utils.test.js.map +0 -1
  803. package/dist/esm/tests/unit/snapshot-focus-selectors-utils.test.d.ts +0 -1
  804. package/dist/esm/tests/unit/snapshot-focus-selectors-utils.test.js +0 -87
  805. package/dist/esm/tests/unit/snapshot-focus-selectors-utils.test.js.map +0 -1
  806. package/dist/esm/tests/unit/snapshot-frame-merge.test.d.ts +0 -1
  807. package/dist/esm/tests/unit/snapshot-frame-merge.test.js +0 -333
  808. package/dist/esm/tests/unit/snapshot-frame-merge.test.js.map +0 -1
  809. package/dist/esm/tests/unit/snapshot-tree-format-utils.test.d.ts +0 -1
  810. package/dist/esm/tests/unit/snapshot-tree-format-utils.test.js +0 -82
  811. package/dist/esm/tests/unit/snapshot-tree-format-utils.test.js.map +0 -1
  812. package/dist/esm/tests/unit/snapshot-xpath-utils.test.d.ts +0 -1
  813. package/dist/esm/tests/unit/snapshot-xpath-utils.test.js +0 -72
  814. package/dist/esm/tests/unit/snapshot-xpath-utils.test.js.map +0 -1
  815. package/dist/esm/tests/unit/timeout-handlers.test.d.ts +0 -1
  816. package/dist/esm/tests/unit/timeout-handlers.test.js +0 -862
  817. package/dist/esm/tests/unit/timeout-handlers.test.js.map +0 -1
  818. package/dist/esm/tests/unit/understudy-command-exception.test.d.ts +0 -1
  819. package/dist/esm/tests/unit/understudy-command-exception.test.js +0 -55
  820. package/dist/esm/tests/unit/understudy-command-exception.test.js.map +0 -1
  821. package/dist/esm/tests/unit/xpath-parser.test.d.ts +0 -1
  822. package/dist/esm/tests/unit/xpath-parser.test.js +0 -309
  823. package/dist/esm/tests/unit/xpath-parser.test.js.map +0 -1
  824. package/dist/esm/tests/unit/xpath-resolver.test.d.ts +0 -1
  825. package/dist/esm/tests/unit/xpath-resolver.test.js +0 -78
  826. package/dist/esm/tests/unit/xpath-resolver.test.js.map +0 -1
  827. package/dist/esm/tests/unit/zod-enum-compatibility.test.d.ts +0 -1
  828. package/dist/esm/tests/unit/zod-enum-compatibility.test.js +0 -114
  829. package/dist/esm/tests/unit/zod-enum-compatibility.test.js.map +0 -1
@@ -1,504 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- const vitest_1 = require("vitest");
37
- const capture = __importStar(require("../../lib/v3/understudy/a11y/snapshot/capture.js"));
38
- const a11yTree = __importStar(require("../../lib/v3/understudy/a11y/snapshot/a11yTree.js"));
39
- const domTree = __importStar(require("../../lib/v3/understudy/a11y/snapshot/domTree.js"));
40
- const focusSelectors = __importStar(require("../../lib/v3/understudy/a11y/snapshot/focusSelectors.js"));
41
- const selectorResolver_js_1 = require("../../lib/v3/understudy/selectorResolver.js");
42
- const mockCDPSession_js_1 = require("./helpers/mockCDPSession.js");
43
- const makeProtocolFrame = (id) => ({
44
- id,
45
- loaderId: `${id}-loader`,
46
- url: "https://example.com",
47
- securityOrigin: "https://example.com",
48
- mimeType: "text/html",
49
- });
50
- const makeFrameTree = (id, children = []) => ({
51
- frame: makeProtocolFrame(id),
52
- childFrames: children,
53
- });
54
- const makePage = (overrides = {}) => {
55
- const defaultSession = new mockCDPSession_js_1.MockCDPSession({}, "default-session");
56
- const base = {
57
- mainFrameId: () => "frame-1",
58
- asProtocolFrameTree: () => makeFrameTree("frame-1"),
59
- listAllFrameIds: () => ["frame-1"],
60
- getSessionForFrame: () => defaultSession,
61
- getOrdinal: () => 0,
62
- };
63
- return { ...base, ...overrides };
64
- };
65
- const makeSessionIndex = () => ({
66
- rootBackend: 100,
67
- absByBe: new Map([
68
- [100, "/"],
69
- [101, "/html[1]"],
70
- [102, "/html[1]/body[1]"],
71
- [150, "/html[1]/body[1]/iframe[1]"],
72
- [200, "/html[1]/body[1]/iframe[1]"],
73
- [201, "/html[1]/body[1]/iframe[1]/div[1]"],
74
- ]),
75
- tagByBe: new Map([
76
- [100, "#document"],
77
- [101, "html"],
78
- [102, "body"],
79
- [150, "iframe"],
80
- [200, "#document"],
81
- [201, "div"],
82
- ]),
83
- scrollByBe: new Map([[201, true]]),
84
- docRootOf: new Map([
85
- [100, 100],
86
- [101, 100],
87
- [102, 100],
88
- [150, 100],
89
- [200, 200],
90
- [201, 200],
91
- ]),
92
- contentDocRootByIframe: new Map([[150, 200]]),
93
- enterByBe: new Map([
94
- [100, 0],
95
- [101, 1],
96
- [102, 2],
97
- [150, 3],
98
- [200, 4],
99
- [201, 5],
100
- ]),
101
- exitByBe: new Map([
102
- [101, 6],
103
- [102, 7],
104
- [201, 8],
105
- [200, 9],
106
- [150, 10],
107
- [100, 11],
108
- ]),
109
- });
110
- (0, vitest_1.beforeEach)(() => {
111
- vitest_1.vi.restoreAllMocks();
112
- });
113
- (0, vitest_1.describe)("buildFrameContext", () => {
114
- (0, vitest_1.it)("indexes parent relationships from the frame tree", () => {
115
- const frameTree = makeFrameTree("frame-1", [
116
- makeFrameTree("frame-2", [makeFrameTree("frame-3")]),
117
- makeFrameTree("frame-4"),
118
- ]);
119
- const page = makePage({
120
- asProtocolFrameTree: () => frameTree,
121
- listAllFrameIds: () => ["frame-1", "frame-2", "frame-3", "frame-4"],
122
- });
123
- const context = capture.buildFrameContext(page);
124
- (0, vitest_1.expect)(context.rootId).toBe("frame-1");
125
- (0, vitest_1.expect)(context.frames).toEqual([
126
- "frame-1",
127
- "frame-2",
128
- "frame-3",
129
- "frame-4",
130
- ]);
131
- (0, vitest_1.expect)(context.parentByFrame.get("frame-1")).toBeNull();
132
- (0, vitest_1.expect)(context.parentByFrame.get("frame-2")).toBe("frame-1");
133
- (0, vitest_1.expect)(context.parentByFrame.get("frame-3")).toBe("frame-2");
134
- (0, vitest_1.expect)(context.parentByFrame.get("frame-4")).toBe("frame-1");
135
- });
136
- });
137
- (0, vitest_1.describe)("buildSessionIndexes", () => {
138
- (0, vitest_1.it)("deduplicates frames that share the same CDP session id", async () => {
139
- const session = new mockCDPSession_js_1.MockCDPSession({}, "session-a");
140
- const page = makePage({
141
- // Every frame lookup returns the same session instance, so buildSessionIndexes
142
- // should call buildSessionDomIndex only once and reuse the result.
143
- getSessionForFrame: () => session,
144
- });
145
- const idx = makeSessionIndex();
146
- const spy = vitest_1.vi
147
- .spyOn(domTree, "buildSessionDomIndex")
148
- .mockResolvedValue(idx);
149
- const result = await capture.buildSessionIndexes(page, ["frame-1", "frame-2"], true);
150
- (0, vitest_1.expect)(spy).toHaveBeenCalledTimes(1); // only one DOM.getDocument per session id
151
- (0, vitest_1.expect)(spy).toHaveBeenCalledWith(session, true);
152
- (0, vitest_1.expect)(result.get("session-a")).toBe(idx);
153
- });
154
- (0, vitest_1.it)("builds indexes for sessions without ids using the 'root' key", async () => {
155
- const sessionWithoutId = {
156
- id: undefined,
157
- async send(_method, _params) {
158
- void _method;
159
- void _params;
160
- return {};
161
- },
162
- on() { },
163
- off() { },
164
- async close() { },
165
- };
166
- const sessionWithId = new mockCDPSession_js_1.MockCDPSession({}, "child-session");
167
- const page = makePage({
168
- getSessionForFrame: (frameId) => frameId === "frame-1" ? sessionWithoutId : sessionWithId,
169
- });
170
- const idxA = makeSessionIndex();
171
- const idxB = makeSessionIndex();
172
- const spy = vitest_1.vi
173
- .spyOn(domTree, "buildSessionDomIndex")
174
- .mockResolvedValueOnce(idxA)
175
- .mockResolvedValueOnce(idxB);
176
- const result = await capture.buildSessionIndexes(page, ["frame-1", "frame-2"], false);
177
- // Verifies the helper invokes buildSessionDomIndex once for each unique session,
178
- // keying anonymous sessions as "root" so downstream lookups remain stable.
179
- (0, vitest_1.expect)(spy).toHaveBeenNthCalledWith(1, sessionWithoutId, false);
180
- (0, vitest_1.expect)(spy).toHaveBeenNthCalledWith(2, sessionWithId, false);
181
- (0, vitest_1.expect)(result.get("root")).toBe(idxA);
182
- (0, vitest_1.expect)(result.get("child-session")).toBe(idxB);
183
- });
184
- });
185
- (0, vitest_1.describe)("collectPerFrameMaps", () => {
186
- (0, vitest_1.it)("builds per-frame xpath/tag maps and outlines from a shared session index", async () => {
187
- const session = new mockCDPSession_js_1.MockCDPSession({
188
- "DOM.getFrameOwner": async () => ({ backendNodeId: 150 }),
189
- }, "session-a");
190
- const page = makePage({
191
- getSessionForFrame: () => session,
192
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
193
- });
194
- const context = {
195
- rootId: "frame-1",
196
- frames: ["frame-1", "frame-2"],
197
- parentByFrame: new Map([
198
- ["frame-1", null],
199
- ["frame-2", "frame-1"],
200
- ]),
201
- };
202
- const sessionIndex = makeSessionIndex();
203
- const sessionToIndex = new Map([[session.id, sessionIndex]]);
204
- vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockImplementation(async (_sess, frameId) => ({
205
- outline: `outline-${frameId}`,
206
- urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },
207
- scopeApplied: false,
208
- }));
209
- const result = await capture.collectPerFrameMaps(page, context, sessionToIndex, { experimental: true }, true, context.frames, new Map());
210
- (0, vitest_1.expect)(result.perFrameOutlines).toEqual([
211
- { frameId: "frame-1", outline: "outline-frame-1" },
212
- { frameId: "frame-2", outline: "outline-frame-2" },
213
- ]);
214
- const rootMaps = result.perFrameMaps.get("frame-1");
215
- (0, vitest_1.expect)(rootMaps?.xpathMap["0-100"]).toBe("/");
216
- (0, vitest_1.expect)(rootMaps?.xpathMap["0-101"]).toBe("/html[1]");
217
- (0, vitest_1.expect)(rootMaps?.xpathMap["0-102"]).toBe("/html[1]/body[1]");
218
- const childMaps = result.perFrameMaps.get("frame-2");
219
- (0, vitest_1.expect)(childMaps?.xpathMap["1-200"]).toBe("/");
220
- (0, vitest_1.expect)(childMaps?.xpathMap["1-201"]).toBe("/div[1]");
221
- (0, vitest_1.expect)(childMaps?.scrollableMap["1-201"]).toBe(true);
222
- (0, vitest_1.expect)(childMaps?.urlMap).toEqual({
223
- "url-frame-2": "https://frame-2.test",
224
- });
225
- (0, vitest_1.expect)(session.callsFor("DOM.getFrameOwner")).toHaveLength(1);
226
- });
227
- (0, vitest_1.it)("builds a missing session index on demand and memoizes it", async () => {
228
- const session = new mockCDPSession_js_1.MockCDPSession({}, "new-session");
229
- const page = makePage({
230
- getSessionForFrame: () => session,
231
- getOrdinal: () => 2,
232
- });
233
- const context = {
234
- rootId: "frame-9",
235
- frames: ["frame-9"],
236
- parentByFrame: new Map([["frame-9", null]]),
237
- };
238
- const idx = makeSessionIndex();
239
- const buildSpy = vitest_1.vi
240
- .spyOn(domTree, "buildSessionDomIndex")
241
- .mockResolvedValue(idx);
242
- vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockResolvedValue({
243
- outline: "outline",
244
- urlMap: {},
245
- scopeApplied: false,
246
- });
247
- const sessionToIndex = new Map();
248
- const result = await capture.collectPerFrameMaps(page, context, sessionToIndex, undefined, false, context.frames, new Map());
249
- (0, vitest_1.expect)(buildSpy).toHaveBeenCalledWith(session, false);
250
- (0, vitest_1.expect)(sessionToIndex.get("new-session")).toBe(idx);
251
- (0, vitest_1.expect)(result.perFrameMaps.get("frame-9")?.xpathMap["2-100"]).toBe("/");
252
- });
253
- (0, vitest_1.it)("skips frames that are not listed in the frameIds argument", async () => {
254
- const session = new mockCDPSession_js_1.MockCDPSession({}, "session-a");
255
- const page = makePage({
256
- getSessionForFrame: () => session,
257
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
258
- });
259
- const context = {
260
- rootId: "frame-1",
261
- frames: ["frame-1", "frame-2"],
262
- parentByFrame: new Map([
263
- ["frame-1", null],
264
- ["frame-2", "frame-1"],
265
- ]),
266
- };
267
- const sessionIndex = makeSessionIndex();
268
- const sessionToIndex = new Map([[session.id, sessionIndex]]);
269
- const a11ySpy = vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockResolvedValue({
270
- outline: "outline",
271
- urlMap: {},
272
- scopeApplied: false,
273
- });
274
- const result = await capture.collectPerFrameMaps(page, context, sessionToIndex, undefined, true, ["frame-1"], new Map());
275
- (0, vitest_1.expect)(a11ySpy).toHaveBeenCalledTimes(1);
276
- (0, vitest_1.expect)(result.perFrameMaps.has("frame-2")).toBe(false);
277
- (0, vitest_1.expect)(result.perFrameOutlines.map((o) => o.frameId)).toEqual(["frame-1"]);
278
- });
279
- });
280
- (0, vitest_1.describe)("captureHybridSnapshot", () => {
281
- (0, vitest_1.it)("returns early when the scoped snapshot path succeeds", async () => {
282
- const session = new mockCDPSession_js_1.MockCDPSession({}, "session-a");
283
- const page = makePage({
284
- getSessionForFrame: () => session,
285
- });
286
- const options = { focusSelector: "/html" };
287
- vitest_1.vi.spyOn(focusSelectors, "resolveFocusFrameAndTail").mockResolvedValue({
288
- targetFrameId: "frame-1",
289
- tailXPath: "",
290
- absPrefix: "",
291
- });
292
- const domMapsSpy = vitest_1.vi
293
- .spyOn(domTree, "domMapsForSession")
294
- .mockResolvedValue({
295
- tagNameMap: { "0-100": "#document" },
296
- xpathMap: { "0-100": "/" },
297
- scrollableMap: {},
298
- });
299
- const a11ySpy = vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockResolvedValue({
300
- outline: "scoped outline",
301
- urlMap: { "0-100": "https://frame-1.test" },
302
- scopeApplied: true,
303
- });
304
- const buildIndexSpy = vitest_1.vi
305
- .spyOn(domTree, "buildSessionDomIndex")
306
- .mockResolvedValue(makeSessionIndex());
307
- const result = await capture.captureHybridSnapshot(page, options);
308
- (0, vitest_1.expect)(result.combinedTree).toBe("scoped outline");
309
- (0, vitest_1.expect)(result.combinedUrlMap["0-100"]).toBe("https://frame-1.test");
310
- (0, vitest_1.expect)(domMapsSpy).toHaveBeenCalled();
311
- (0, vitest_1.expect)(a11ySpy).toHaveBeenCalled();
312
- (0, vitest_1.expect)(buildIndexSpy).not.toHaveBeenCalled();
313
- });
314
- (0, vitest_1.it)("scoped snapshot still succeeds when iframe inclusion is disabled", async () => {
315
- const session = new mockCDPSession_js_1.MockCDPSession({}, "session-a");
316
- const page = makePage({
317
- getSessionForFrame: () => session,
318
- });
319
- const options = { focusSelector: "/html", includeIframes: false };
320
- vitest_1.vi.spyOn(focusSelectors, "resolveFocusFrameAndTail").mockResolvedValue({
321
- targetFrameId: "frame-1",
322
- tailXPath: "",
323
- absPrefix: "",
324
- });
325
- const domMapsSpy = vitest_1.vi
326
- .spyOn(domTree, "domMapsForSession")
327
- .mockResolvedValue({
328
- tagNameMap: { "0-100": "#document" },
329
- xpathMap: { "0-100": "/" },
330
- scrollableMap: {},
331
- });
332
- const a11ySpy = vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockResolvedValue({
333
- outline: "scoped outline",
334
- urlMap: { "0-100": "https://frame-1.test" },
335
- scopeApplied: true,
336
- });
337
- const buildIndexSpy = vitest_1.vi
338
- .spyOn(domTree, "buildSessionDomIndex")
339
- .mockResolvedValue(makeSessionIndex());
340
- const result = await capture.captureHybridSnapshot(page, options);
341
- (0, vitest_1.expect)(result.combinedTree).toBe("scoped outline");
342
- (0, vitest_1.expect)(result.combinedUrlMap["0-100"]).toBe("https://frame-1.test");
343
- (0, vitest_1.expect)(domMapsSpy).toHaveBeenCalled();
344
- (0, vitest_1.expect)(a11ySpy).toHaveBeenCalled();
345
- (0, vitest_1.expect)(buildIndexSpy).not.toHaveBeenCalled();
346
- });
347
- (0, vitest_1.it)("filters ignored nodes out of the merged snapshot artifacts", async () => {
348
- const session = new mockCDPSession_js_1.MockCDPSession({
349
- "DOM.getFrameOwner": async () => ({ backendNodeId: 150 }),
350
- "DOM.describeNode": async (params) => ({
351
- node: {
352
- backendNodeId: params?.objectId === "ignored-object-a"
353
- ? 201
354
- : params?.objectId === "ignored-object-b"
355
- ? 202
356
- : 0,
357
- },
358
- }),
359
- }, "session-a");
360
- const page = makePage({
361
- asProtocolFrameTree: () => makeFrameTree("frame-1", [makeFrameTree("frame-2")]),
362
- listAllFrameIds: () => ["frame-1", "frame-2"],
363
- getSessionForFrame: () => session,
364
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
365
- });
366
- const idx = makeSessionIndex();
367
- idx.absByBe.set(202, "/html[1]/body[1]/iframe[1]/aside[1]");
368
- idx.tagByBe.set(202, "aside");
369
- idx.docRootOf.set(202, 200);
370
- idx.enterByBe.set(202, 6);
371
- idx.exitByBe.set(202, 7);
372
- idx.exitByBe.set(201, 8);
373
- idx.exitByBe.set(200, 9);
374
- idx.exitByBe.set(150, 10);
375
- idx.exitByBe.set(100, 11);
376
- vitest_1.vi.spyOn(domTree, "buildSessionDomIndex").mockResolvedValue(idx);
377
- vitest_1.vi.spyOn(focusSelectors, "resolveCssFocusFrameAndTail").mockResolvedValue({
378
- targetFrameId: "frame-2",
379
- tailSelector: ".ad",
380
- absPrefix: "/html/body/iframe[1]",
381
- });
382
- vitest_1.vi.spyOn(selectorResolver_js_1.FrameSelectorResolver.prototype, "resolveAll").mockResolvedValue([
383
- { objectId: "ignored-object-a", nodeId: null },
384
- { objectId: "ignored-object-b", nodeId: null },
385
- ]);
386
- vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockImplementation(async (_sess, frameId, opts) => ({
387
- outline: opts.isIgnoredBackendNode?.(201) && opts.isIgnoredBackendNode?.(202)
388
- ? `outline-${frameId}-filtered`
389
- : `outline-${frameId}`,
390
- urlMap: frameId === "frame-2" &&
391
- opts.isIgnoredBackendNode?.(201) &&
392
- opts.isIgnoredBackendNode?.(202)
393
- ? {}
394
- : { [`url-${frameId}`]: `https://${frameId}.test` },
395
- scopeApplied: false,
396
- }));
397
- const snapshot = await capture.captureHybridSnapshot(page, {
398
- ignoreSelectors: [".ad"],
399
- });
400
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-201"]).toBeUndefined();
401
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-202"]).toBeUndefined();
402
- (0, vitest_1.expect)(snapshot.combinedUrlMap["url-frame-2"]).toBeUndefined();
403
- (0, vitest_1.expect)(snapshot.perFrame?.find((frame) => frame.frameId === "frame-2")?.outline).toContain("filtered");
404
- });
405
- (0, vitest_1.it)("excludes child frame subtrees when an ignored node is an iframe host", async () => {
406
- const session = new mockCDPSession_js_1.MockCDPSession({
407
- "DOM.getFrameOwner": async () => ({ backendNodeId: 150 }),
408
- "DOM.describeNode": async (params) => ({
409
- node: { backendNodeId: params?.objectId === "iframe-host" ? 150 : 0 },
410
- }),
411
- }, "session-a");
412
- const page = makePage({
413
- asProtocolFrameTree: () => makeFrameTree("frame-1", [makeFrameTree("frame-2")]),
414
- listAllFrameIds: () => ["frame-1", "frame-2"],
415
- getSessionForFrame: () => session,
416
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
417
- });
418
- vitest_1.vi.spyOn(domTree, "buildSessionDomIndex").mockResolvedValue(makeSessionIndex());
419
- vitest_1.vi.spyOn(focusSelectors, "resolveCssFocusFrameAndTail").mockResolvedValue({
420
- targetFrameId: "frame-1",
421
- tailSelector: "iframe.ad",
422
- absPrefix: "",
423
- });
424
- vitest_1.vi.spyOn(selectorResolver_js_1.FrameSelectorResolver.prototype, "resolveAll").mockResolvedValue([
425
- { objectId: "iframe-host", nodeId: null },
426
- ]);
427
- vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockImplementation(async (_sess, frameId, opts) => ({
428
- outline: frameId === "frame-2" && opts.isIgnoredBackendNode?.(200)
429
- ? ""
430
- : `outline-${frameId}`,
431
- urlMap: frameId === "frame-2" && opts.isIgnoredBackendNode?.(200)
432
- ? {}
433
- : { [`url-${frameId}`]: `https://${frameId}.test` },
434
- scopeApplied: false,
435
- }));
436
- const snapshot = await capture.captureHybridSnapshot(page, {
437
- ignoreSelectors: ["iframe.ad"],
438
- });
439
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-200"]).toBeUndefined();
440
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-201"]).toBeUndefined();
441
- (0, vitest_1.expect)(snapshot.combinedUrlMap["url-frame-2"]).toBeUndefined();
442
- (0, vitest_1.expect)(snapshot.combinedTree).not.toContain("outline-frame-2");
443
- });
444
- (0, vitest_1.it)("collects per-frame data and merges it when no scoped snapshot is available", async () => {
445
- const session = new mockCDPSession_js_1.MockCDPSession({
446
- "DOM.getFrameOwner": async () => ({ backendNodeId: 150 }),
447
- }, "session-a");
448
- const page = makePage({
449
- asProtocolFrameTree: () => makeFrameTree("frame-1", [makeFrameTree("frame-2")]),
450
- listAllFrameIds: () => ["frame-1", "frame-2"],
451
- getSessionForFrame: () => session,
452
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
453
- });
454
- const idx = makeSessionIndex();
455
- vitest_1.vi.spyOn(domTree, "buildSessionDomIndex").mockResolvedValue(idx);
456
- vitest_1.vi.spyOn(a11yTree, "a11yForFrame").mockImplementation(async (_sess, frameId) => ({
457
- outline: frameId === "frame-1"
458
- ? "[0-150] iframe host"
459
- : "[1-200] child subtree",
460
- urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },
461
- scopeApplied: false,
462
- }));
463
- const snapshot = await capture.captureHybridSnapshot(page);
464
- (0, vitest_1.expect)(snapshot.combinedTree).toContain("[1-200] child subtree");
465
- (0, vitest_1.expect)(snapshot.combinedXpathMap["0-100"]).toBe("/");
466
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-201"]).toBe("/html[1]/body[1]/iframe[1]/div[1]");
467
- (0, vitest_1.expect)(snapshot.combinedUrlMap["url-frame-2"]).toBe("https://frame-2.test");
468
- (0, vitest_1.expect)(snapshot.perFrame?.map((pf) => pf.frameId)).toEqual([
469
- "frame-1",
470
- "frame-2",
471
- ]);
472
- });
473
- (0, vitest_1.it)("omits iframe frames when includeIframes is false", async () => {
474
- const session = new mockCDPSession_js_1.MockCDPSession({
475
- "DOM.getFrameOwner": async () => ({ backendNodeId: 150 }),
476
- }, "session-a");
477
- const page = makePage({
478
- asProtocolFrameTree: () => makeFrameTree("frame-1", [makeFrameTree("frame-2")]),
479
- listAllFrameIds: () => ["frame-1", "frame-2"],
480
- getSessionForFrame: () => session,
481
- getOrdinal: (frameId) => (frameId === "frame-1" ? 0 : 1),
482
- });
483
- const idx = makeSessionIndex();
484
- vitest_1.vi.spyOn(domTree, "buildSessionDomIndex").mockResolvedValue(idx);
485
- const a11ySpy = vitest_1.vi
486
- .spyOn(a11yTree, "a11yForFrame")
487
- .mockImplementation(async (_sess, frameId) => ({
488
- outline: frameId === "frame-1"
489
- ? "[0-150] iframe host"
490
- : "[1-200] child subtree",
491
- urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },
492
- scopeApplied: false,
493
- }));
494
- const snapshot = await capture.captureHybridSnapshot(page, {
495
- includeIframes: false,
496
- });
497
- (0, vitest_1.expect)(a11ySpy).toHaveBeenCalledTimes(1);
498
- (0, vitest_1.expect)(session.callsFor("DOM.getFrameOwner")).toHaveLength(0);
499
- (0, vitest_1.expect)(snapshot.perFrame?.map((pf) => pf.frameId)).toEqual(["frame-1"]);
500
- (0, vitest_1.expect)(snapshot.combinedXpathMap["1-201"]).toBeUndefined();
501
- (0, vitest_1.expect)(snapshot.combinedTree).not.toContain("[1-200] child subtree");
502
- });
503
- });
504
- //# sourceMappingURL=snapshot-capture-orchestration.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"snapshot-capture-orchestration.test.js","sourceRoot":"","sources":["../../../../tests/unit/snapshot-capture-orchestration.test.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Protocol } from \"devtools-protocol\";\nimport { beforeEach, describe, expect, it, vi } from \"vitest\";\nimport type { CDPSessionLike } from \"../../lib/v3/understudy/cdp.js\";\nimport type { Page } from \"../../lib/v3/understudy/page.js\";\nimport type {\n FrameContext,\n SessionDomIndex,\n} from \"../../lib/v3/types/private/index.js\";\nimport * as capture from \"../../lib/v3/understudy/a11y/snapshot/capture.js\";\nimport * as a11yTree from \"../../lib/v3/understudy/a11y/snapshot/a11yTree.js\";\nimport * as domTree from \"../../lib/v3/understudy/a11y/snapshot/domTree.js\";\nimport * as focusSelectors from \"../../lib/v3/understudy/a11y/snapshot/focusSelectors.js\";\nimport { FrameSelectorResolver } from \"../../lib/v3/understudy/selectorResolver.js\";\nimport { MockCDPSession } from \"./helpers/mockCDPSession.js\";\n\nconst makeProtocolFrame = (id: string): Protocol.Page.Frame =>\n ({\n id,\n loaderId: `${id}-loader`,\n url: \"https://example.com\",\n securityOrigin: \"https://example.com\",\n mimeType: \"text/html\",\n }) as unknown as Protocol.Page.Frame;\n\nconst makeFrameTree = (\n id: string,\n children: Protocol.Page.FrameTree[] = [],\n): Protocol.Page.FrameTree => ({\n frame: makeProtocolFrame(id),\n childFrames: children,\n});\n\ntype PageStub = Pick<\n Page,\n | \"mainFrameId\"\n | \"asProtocolFrameTree\"\n | \"listAllFrameIds\"\n | \"getSessionForFrame\"\n | \"getOrdinal\"\n>;\n\nconst makePage = (overrides: Partial<PageStub> = {}): Page => {\n const defaultSession = new MockCDPSession({}, \"default-session\");\n const base: PageStub = {\n mainFrameId: () => \"frame-1\",\n asProtocolFrameTree: () => makeFrameTree(\"frame-1\"),\n listAllFrameIds: () => [\"frame-1\"],\n getSessionForFrame: () => defaultSession,\n getOrdinal: () => 0,\n };\n return { ...base, ...overrides } as unknown as Page;\n};\n\nconst makeSessionIndex = (): SessionDomIndex => ({\n rootBackend: 100,\n absByBe: new Map([\n [100, \"/\"],\n [101, \"/html[1]\"],\n [102, \"/html[1]/body[1]\"],\n [150, \"/html[1]/body[1]/iframe[1]\"],\n [200, \"/html[1]/body[1]/iframe[1]\"],\n [201, \"/html[1]/body[1]/iframe[1]/div[1]\"],\n ]),\n tagByBe: new Map([\n [100, \"#document\"],\n [101, \"html\"],\n [102, \"body\"],\n [150, \"iframe\"],\n [200, \"#document\"],\n [201, \"div\"],\n ]),\n scrollByBe: new Map([[201, true]]),\n docRootOf: new Map([\n [100, 100],\n [101, 100],\n [102, 100],\n [150, 100],\n [200, 200],\n [201, 200],\n ]),\n contentDocRootByIframe: new Map([[150, 200]]),\n enterByBe: new Map([\n [100, 0],\n [101, 1],\n [102, 2],\n [150, 3],\n [200, 4],\n [201, 5],\n ]),\n exitByBe: new Map([\n [101, 6],\n [102, 7],\n [201, 8],\n [200, 9],\n [150, 10],\n [100, 11],\n ]),\n});\n\nbeforeEach(() => {\n vi.restoreAllMocks();\n});\n\ndescribe(\"buildFrameContext\", () => {\n it(\"indexes parent relationships from the frame tree\", () => {\n const frameTree = makeFrameTree(\"frame-1\", [\n makeFrameTree(\"frame-2\", [makeFrameTree(\"frame-3\")]),\n makeFrameTree(\"frame-4\"),\n ]);\n const page = makePage({\n asProtocolFrameTree: () => frameTree,\n listAllFrameIds: () => [\"frame-1\", \"frame-2\", \"frame-3\", \"frame-4\"],\n });\n\n const context = capture.buildFrameContext(page);\n\n expect(context.rootId).toBe(\"frame-1\");\n expect(context.frames).toEqual([\n \"frame-1\",\n \"frame-2\",\n \"frame-3\",\n \"frame-4\",\n ]);\n expect(context.parentByFrame.get(\"frame-1\")).toBeNull();\n expect(context.parentByFrame.get(\"frame-2\")).toBe(\"frame-1\");\n expect(context.parentByFrame.get(\"frame-3\")).toBe(\"frame-2\");\n expect(context.parentByFrame.get(\"frame-4\")).toBe(\"frame-1\");\n });\n});\n\ndescribe(\"buildSessionIndexes\", () => {\n it(\"deduplicates frames that share the same CDP session id\", async () => {\n const session = new MockCDPSession({}, \"session-a\");\n const page = makePage({\n // Every frame lookup returns the same session instance, so buildSessionIndexes\n // should call buildSessionDomIndex only once and reuse the result.\n getSessionForFrame: () => session,\n });\n const idx = makeSessionIndex();\n const spy = vi\n .spyOn(domTree, \"buildSessionDomIndex\")\n .mockResolvedValue(idx);\n\n const result = await capture.buildSessionIndexes(\n page,\n [\"frame-1\", \"frame-2\"],\n true,\n );\n\n expect(spy).toHaveBeenCalledTimes(1); // only one DOM.getDocument per session id\n expect(spy).toHaveBeenCalledWith(session, true);\n expect(result.get(\"session-a\")).toBe(idx);\n });\n\n it(\"builds indexes for sessions without ids using the 'root' key\", async () => {\n const sessionWithoutId: CDPSessionLike = {\n id: undefined,\n async send<R = unknown>(\n _method: string,\n _params?: Record<string, unknown>,\n ): Promise<R> {\n void _method;\n void _params;\n return {} as R;\n },\n on() {},\n off() {},\n async close() {},\n };\n const sessionWithId = new MockCDPSession({}, \"child-session\");\n const page = makePage({\n getSessionForFrame: (frameId: string) =>\n frameId === \"frame-1\" ? sessionWithoutId : sessionWithId,\n });\n\n const idxA = makeSessionIndex();\n const idxB = makeSessionIndex();\n const spy = vi\n .spyOn(domTree, \"buildSessionDomIndex\")\n .mockResolvedValueOnce(idxA)\n .mockResolvedValueOnce(idxB);\n\n const result = await capture.buildSessionIndexes(\n page,\n [\"frame-1\", \"frame-2\"],\n false,\n );\n\n // Verifies the helper invokes buildSessionDomIndex once for each unique session,\n // keying anonymous sessions as \"root\" so downstream lookups remain stable.\n expect(spy).toHaveBeenNthCalledWith(1, sessionWithoutId, false);\n expect(spy).toHaveBeenNthCalledWith(2, sessionWithId, false);\n expect(result.get(\"root\")).toBe(idxA);\n expect(result.get(\"child-session\")).toBe(idxB);\n });\n});\n\ndescribe(\"collectPerFrameMaps\", () => {\n it(\"builds per-frame xpath/tag maps and outlines from a shared session index\", async () => {\n const session = new MockCDPSession(\n {\n \"DOM.getFrameOwner\": async () => ({ backendNodeId: 150 }),\n },\n \"session-a\",\n );\n const page = makePage({\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n const context: FrameContext = {\n rootId: \"frame-1\",\n frames: [\"frame-1\", \"frame-2\"],\n parentByFrame: new Map([\n [\"frame-1\", null],\n [\"frame-2\", \"frame-1\"],\n ]),\n };\n const sessionIndex = makeSessionIndex();\n const sessionToIndex = new Map([[session.id, sessionIndex]]);\n\n vi.spyOn(a11yTree, \"a11yForFrame\").mockImplementation(\n async (_sess, frameId) => ({\n outline: `outline-${frameId}`,\n urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },\n scopeApplied: false,\n }),\n );\n\n const result = await capture.collectPerFrameMaps(\n page,\n context,\n sessionToIndex,\n { experimental: true },\n true,\n context.frames,\n new Map(),\n );\n\n expect(result.perFrameOutlines).toEqual([\n { frameId: \"frame-1\", outline: \"outline-frame-1\" },\n { frameId: \"frame-2\", outline: \"outline-frame-2\" },\n ]);\n const rootMaps = result.perFrameMaps.get(\"frame-1\");\n expect(rootMaps?.xpathMap[\"0-100\"]).toBe(\"/\");\n expect(rootMaps?.xpathMap[\"0-101\"]).toBe(\"/html[1]\");\n expect(rootMaps?.xpathMap[\"0-102\"]).toBe(\"/html[1]/body[1]\");\n const childMaps = result.perFrameMaps.get(\"frame-2\");\n expect(childMaps?.xpathMap[\"1-200\"]).toBe(\"/\");\n expect(childMaps?.xpathMap[\"1-201\"]).toBe(\"/div[1]\");\n expect(childMaps?.scrollableMap[\"1-201\"]).toBe(true);\n expect(childMaps?.urlMap).toEqual({\n \"url-frame-2\": \"https://frame-2.test\",\n });\n expect(session.callsFor(\"DOM.getFrameOwner\")).toHaveLength(1);\n });\n\n it(\"builds a missing session index on demand and memoizes it\", async () => {\n const session = new MockCDPSession({}, \"new-session\");\n const page = makePage({\n getSessionForFrame: () => session,\n getOrdinal: () => 2,\n });\n const context: FrameContext = {\n rootId: \"frame-9\",\n frames: [\"frame-9\"],\n parentByFrame: new Map([[\"frame-9\", null]]),\n };\n const idx = makeSessionIndex();\n const buildSpy = vi\n .spyOn(domTree, \"buildSessionDomIndex\")\n .mockResolvedValue(idx);\n vi.spyOn(a11yTree, \"a11yForFrame\").mockResolvedValue({\n outline: \"outline\",\n urlMap: {},\n scopeApplied: false,\n });\n\n const sessionToIndex = new Map<string, SessionDomIndex>();\n const result = await capture.collectPerFrameMaps(\n page,\n context,\n sessionToIndex,\n undefined,\n false,\n context.frames,\n new Map(),\n );\n\n expect(buildSpy).toHaveBeenCalledWith(session, false);\n expect(sessionToIndex.get(\"new-session\")).toBe(idx);\n expect(result.perFrameMaps.get(\"frame-9\")?.xpathMap[\"2-100\"]).toBe(\"/\");\n });\n\n it(\"skips frames that are not listed in the frameIds argument\", async () => {\n const session = new MockCDPSession({}, \"session-a\");\n const page = makePage({\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n const context: FrameContext = {\n rootId: \"frame-1\",\n frames: [\"frame-1\", \"frame-2\"],\n parentByFrame: new Map([\n [\"frame-1\", null],\n [\"frame-2\", \"frame-1\"],\n ]),\n };\n const sessionIndex = makeSessionIndex();\n const sessionToIndex = new Map([[session.id, sessionIndex]]);\n\n const a11ySpy = vi.spyOn(a11yTree, \"a11yForFrame\").mockResolvedValue({\n outline: \"outline\",\n urlMap: {},\n scopeApplied: false,\n });\n\n const result = await capture.collectPerFrameMaps(\n page,\n context,\n sessionToIndex,\n undefined,\n true,\n [\"frame-1\"],\n new Map(),\n );\n\n expect(a11ySpy).toHaveBeenCalledTimes(1);\n expect(result.perFrameMaps.has(\"frame-2\")).toBe(false);\n expect(result.perFrameOutlines.map((o) => o.frameId)).toEqual([\"frame-1\"]);\n });\n});\n\ndescribe(\"captureHybridSnapshot\", () => {\n it(\"returns early when the scoped snapshot path succeeds\", async () => {\n const session = new MockCDPSession({}, \"session-a\");\n const page = makePage({\n getSessionForFrame: () => session,\n });\n const options = { focusSelector: \"/html\" };\n\n vi.spyOn(focusSelectors, \"resolveFocusFrameAndTail\").mockResolvedValue({\n targetFrameId: \"frame-1\",\n tailXPath: \"\",\n absPrefix: \"\",\n });\n const domMapsSpy = vi\n .spyOn(domTree, \"domMapsForSession\")\n .mockResolvedValue({\n tagNameMap: { \"0-100\": \"#document\" },\n xpathMap: { \"0-100\": \"/\" },\n scrollableMap: {},\n });\n const a11ySpy = vi.spyOn(a11yTree, \"a11yForFrame\").mockResolvedValue({\n outline: \"scoped outline\",\n urlMap: { \"0-100\": \"https://frame-1.test\" },\n scopeApplied: true,\n });\n const buildIndexSpy = vi\n .spyOn(domTree, \"buildSessionDomIndex\")\n .mockResolvedValue(makeSessionIndex());\n\n const result = await capture.captureHybridSnapshot(page, options);\n\n expect(result.combinedTree).toBe(\"scoped outline\");\n expect(result.combinedUrlMap[\"0-100\"]).toBe(\"https://frame-1.test\");\n expect(domMapsSpy).toHaveBeenCalled();\n expect(a11ySpy).toHaveBeenCalled();\n expect(buildIndexSpy).not.toHaveBeenCalled();\n });\n\n it(\"scoped snapshot still succeeds when iframe inclusion is disabled\", async () => {\n const session = new MockCDPSession({}, \"session-a\");\n const page = makePage({\n getSessionForFrame: () => session,\n });\n const options = { focusSelector: \"/html\", includeIframes: false };\n\n vi.spyOn(focusSelectors, \"resolveFocusFrameAndTail\").mockResolvedValue({\n targetFrameId: \"frame-1\",\n tailXPath: \"\",\n absPrefix: \"\",\n });\n const domMapsSpy = vi\n .spyOn(domTree, \"domMapsForSession\")\n .mockResolvedValue({\n tagNameMap: { \"0-100\": \"#document\" },\n xpathMap: { \"0-100\": \"/\" },\n scrollableMap: {},\n });\n const a11ySpy = vi.spyOn(a11yTree, \"a11yForFrame\").mockResolvedValue({\n outline: \"scoped outline\",\n urlMap: { \"0-100\": \"https://frame-1.test\" },\n scopeApplied: true,\n });\n const buildIndexSpy = vi\n .spyOn(domTree, \"buildSessionDomIndex\")\n .mockResolvedValue(makeSessionIndex());\n\n const result = await capture.captureHybridSnapshot(page, options);\n\n expect(result.combinedTree).toBe(\"scoped outline\");\n expect(result.combinedUrlMap[\"0-100\"]).toBe(\"https://frame-1.test\");\n expect(domMapsSpy).toHaveBeenCalled();\n expect(a11ySpy).toHaveBeenCalled();\n expect(buildIndexSpy).not.toHaveBeenCalled();\n });\n\n it(\"filters ignored nodes out of the merged snapshot artifacts\", async () => {\n const session = new MockCDPSession(\n {\n \"DOM.getFrameOwner\": async () => ({ backendNodeId: 150 }),\n \"DOM.describeNode\": async (params) => ({\n node: {\n backendNodeId:\n params?.objectId === \"ignored-object-a\"\n ? 201\n : params?.objectId === \"ignored-object-b\"\n ? 202\n : 0,\n },\n }),\n },\n \"session-a\",\n );\n const page = makePage({\n asProtocolFrameTree: () =>\n makeFrameTree(\"frame-1\", [makeFrameTree(\"frame-2\")]),\n listAllFrameIds: () => [\"frame-1\", \"frame-2\"],\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n\n const idx = makeSessionIndex();\n idx.absByBe.set(202, \"/html[1]/body[1]/iframe[1]/aside[1]\");\n idx.tagByBe.set(202, \"aside\");\n idx.docRootOf.set(202, 200);\n idx.enterByBe.set(202, 6);\n idx.exitByBe.set(202, 7);\n idx.exitByBe.set(201, 8);\n idx.exitByBe.set(200, 9);\n idx.exitByBe.set(150, 10);\n idx.exitByBe.set(100, 11);\n vi.spyOn(domTree, \"buildSessionDomIndex\").mockResolvedValue(idx);\n vi.spyOn(focusSelectors, \"resolveCssFocusFrameAndTail\").mockResolvedValue({\n targetFrameId: \"frame-2\",\n tailSelector: \".ad\",\n absPrefix: \"/html/body/iframe[1]\",\n });\n vi.spyOn(FrameSelectorResolver.prototype, \"resolveAll\").mockResolvedValue([\n { objectId: \"ignored-object-a\", nodeId: null },\n { objectId: \"ignored-object-b\", nodeId: null },\n ]);\n vi.spyOn(a11yTree, \"a11yForFrame\").mockImplementation(\n async (_sess, frameId, opts) => ({\n outline:\n opts.isIgnoredBackendNode?.(201) && opts.isIgnoredBackendNode?.(202)\n ? `outline-${frameId}-filtered`\n : `outline-${frameId}`,\n urlMap:\n frameId === \"frame-2\" &&\n opts.isIgnoredBackendNode?.(201) &&\n opts.isIgnoredBackendNode?.(202)\n ? {}\n : { [`url-${frameId}`]: `https://${frameId}.test` },\n scopeApplied: false,\n }),\n );\n\n const snapshot = await capture.captureHybridSnapshot(page, {\n ignoreSelectors: [\".ad\"],\n });\n\n expect(snapshot.combinedXpathMap[\"1-201\"]).toBeUndefined();\n expect(snapshot.combinedXpathMap[\"1-202\"]).toBeUndefined();\n expect(snapshot.combinedUrlMap[\"url-frame-2\"]).toBeUndefined();\n expect(\n snapshot.perFrame?.find((frame) => frame.frameId === \"frame-2\")?.outline,\n ).toContain(\"filtered\");\n });\n\n it(\"excludes child frame subtrees when an ignored node is an iframe host\", async () => {\n const session = new MockCDPSession(\n {\n \"DOM.getFrameOwner\": async () => ({ backendNodeId: 150 }),\n \"DOM.describeNode\": async (params) => ({\n node: { backendNodeId: params?.objectId === \"iframe-host\" ? 150 : 0 },\n }),\n },\n \"session-a\",\n );\n const page = makePage({\n asProtocolFrameTree: () =>\n makeFrameTree(\"frame-1\", [makeFrameTree(\"frame-2\")]),\n listAllFrameIds: () => [\"frame-1\", \"frame-2\"],\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n\n vi.spyOn(domTree, \"buildSessionDomIndex\").mockResolvedValue(\n makeSessionIndex(),\n );\n vi.spyOn(focusSelectors, \"resolveCssFocusFrameAndTail\").mockResolvedValue({\n targetFrameId: \"frame-1\",\n tailSelector: \"iframe.ad\",\n absPrefix: \"\",\n });\n vi.spyOn(FrameSelectorResolver.prototype, \"resolveAll\").mockResolvedValue([\n { objectId: \"iframe-host\", nodeId: null },\n ]);\n vi.spyOn(a11yTree, \"a11yForFrame\").mockImplementation(\n async (_sess, frameId, opts) => ({\n outline:\n frameId === \"frame-2\" && opts.isIgnoredBackendNode?.(200)\n ? \"\"\n : `outline-${frameId}`,\n urlMap:\n frameId === \"frame-2\" && opts.isIgnoredBackendNode?.(200)\n ? {}\n : { [`url-${frameId}`]: `https://${frameId}.test` },\n scopeApplied: false,\n }),\n );\n\n const snapshot = await capture.captureHybridSnapshot(page, {\n ignoreSelectors: [\"iframe.ad\"],\n });\n\n expect(snapshot.combinedXpathMap[\"1-200\"]).toBeUndefined();\n expect(snapshot.combinedXpathMap[\"1-201\"]).toBeUndefined();\n expect(snapshot.combinedUrlMap[\"url-frame-2\"]).toBeUndefined();\n expect(snapshot.combinedTree).not.toContain(\"outline-frame-2\");\n });\n\n it(\"collects per-frame data and merges it when no scoped snapshot is available\", async () => {\n const session = new MockCDPSession(\n {\n \"DOM.getFrameOwner\": async () => ({ backendNodeId: 150 }),\n },\n \"session-a\",\n );\n const page = makePage({\n asProtocolFrameTree: () =>\n makeFrameTree(\"frame-1\", [makeFrameTree(\"frame-2\")]),\n listAllFrameIds: () => [\"frame-1\", \"frame-2\"],\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n\n const idx = makeSessionIndex();\n vi.spyOn(domTree, \"buildSessionDomIndex\").mockResolvedValue(idx);\n vi.spyOn(a11yTree, \"a11yForFrame\").mockImplementation(\n async (_sess, frameId) => ({\n outline:\n frameId === \"frame-1\"\n ? \"[0-150] iframe host\"\n : \"[1-200] child subtree\",\n urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },\n scopeApplied: false,\n }),\n );\n\n const snapshot = await capture.captureHybridSnapshot(page);\n\n expect(snapshot.combinedTree).toContain(\"[1-200] child subtree\");\n expect(snapshot.combinedXpathMap[\"0-100\"]).toBe(\"/\");\n expect(snapshot.combinedXpathMap[\"1-201\"]).toBe(\n \"/html[1]/body[1]/iframe[1]/div[1]\",\n );\n expect(snapshot.combinedUrlMap[\"url-frame-2\"]).toBe(\"https://frame-2.test\");\n expect(snapshot.perFrame?.map((pf) => pf.frameId)).toEqual([\n \"frame-1\",\n \"frame-2\",\n ]);\n });\n\n it(\"omits iframe frames when includeIframes is false\", async () => {\n const session = new MockCDPSession(\n {\n \"DOM.getFrameOwner\": async () => ({ backendNodeId: 150 }),\n },\n \"session-a\",\n );\n const page = makePage({\n asProtocolFrameTree: () =>\n makeFrameTree(\"frame-1\", [makeFrameTree(\"frame-2\")]),\n listAllFrameIds: () => [\"frame-1\", \"frame-2\"],\n getSessionForFrame: () => session,\n getOrdinal: (frameId: string) => (frameId === \"frame-1\" ? 0 : 1),\n });\n\n const idx = makeSessionIndex();\n vi.spyOn(domTree, \"buildSessionDomIndex\").mockResolvedValue(idx);\n const a11ySpy = vi\n .spyOn(a11yTree, \"a11yForFrame\")\n .mockImplementation(async (_sess, frameId) => ({\n outline:\n frameId === \"frame-1\"\n ? \"[0-150] iframe host\"\n : \"[1-200] child subtree\",\n urlMap: { [`url-${frameId}`]: `https://${frameId}.test` },\n scopeApplied: false,\n }));\n\n const snapshot = await capture.captureHybridSnapshot(page, {\n includeIframes: false,\n });\n\n expect(a11ySpy).toHaveBeenCalledTimes(1);\n expect(session.callsFor(\"DOM.getFrameOwner\")).toHaveLength(0);\n expect(snapshot.perFrame?.map((pf) => pf.frameId)).toEqual([\"frame-1\"]);\n expect(snapshot.combinedXpathMap[\"1-201\"]).toBeUndefined();\n expect(snapshot.combinedTree).not.toContain(\"[1-200] child subtree\");\n });\n});\n"]}
@@ -1 +0,0 @@
1
- export {};