stably 4.12.1 → 4.12.2

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 (604) hide show
  1. package/dist/index.mjs +1 -1
  2. package/dist/node_modules/minimist/.eslintrc +29 -0
  3. package/dist/node_modules/minimist/.github/FUNDING.yml +12 -0
  4. package/dist/node_modules/minimist/.nycrc +14 -0
  5. package/dist/node_modules/minimist/CHANGELOG.md +298 -0
  6. package/dist/node_modules/minimist/LICENSE +18 -0
  7. package/dist/node_modules/minimist/README.md +121 -0
  8. package/dist/node_modules/minimist/example/parse.js +4 -0
  9. package/dist/node_modules/minimist/index.js +263 -0
  10. package/dist/node_modules/minimist/package.json +75 -0
  11. package/dist/node_modules/minimist/test/all_bool.js +34 -0
  12. package/dist/node_modules/minimist/test/bool.js +177 -0
  13. package/dist/node_modules/minimist/test/dash.js +43 -0
  14. package/dist/node_modules/minimist/test/default_bool.js +37 -0
  15. package/dist/node_modules/minimist/test/dotted.js +24 -0
  16. package/dist/node_modules/minimist/test/kv_short.js +32 -0
  17. package/dist/node_modules/minimist/test/long.js +33 -0
  18. package/dist/node_modules/minimist/test/num.js +38 -0
  19. package/dist/node_modules/minimist/test/parse.js +209 -0
  20. package/dist/node_modules/minimist/test/parse_modified.js +11 -0
  21. package/dist/node_modules/minimist/test/proto.js +64 -0
  22. package/dist/node_modules/minimist/test/short.js +69 -0
  23. package/dist/node_modules/minimist/test/stop_early.js +17 -0
  24. package/dist/node_modules/minimist/test/unknown.js +104 -0
  25. package/dist/node_modules/minimist/test/whitespace.js +10 -0
  26. package/dist/node_modules/playwright/LICENSE +202 -0
  27. package/dist/node_modules/playwright/NOTICE +5 -0
  28. package/dist/node_modules/playwright/README.md +170 -0
  29. package/dist/node_modules/playwright/ThirdPartyNotices.txt +5042 -0
  30. package/dist/node_modules/playwright/cli.js +19 -0
  31. package/dist/node_modules/playwright/index.d.ts +17 -0
  32. package/dist/node_modules/playwright/index.js +17 -0
  33. package/dist/node_modules/playwright/index.mjs +18 -0
  34. package/dist/node_modules/playwright/jsx-runtime.js +42 -0
  35. package/dist/node_modules/playwright/jsx-runtime.mjs +21 -0
  36. package/dist/node_modules/playwright/lib/agents/agentParser.js +89 -0
  37. package/dist/node_modules/playwright/lib/agents/copilot-setup-steps.yml +34 -0
  38. package/dist/node_modules/playwright/lib/agents/generateAgents.js +348 -0
  39. package/dist/node_modules/playwright/lib/agents/playwright-test-coverage.prompt.md +31 -0
  40. package/dist/node_modules/playwright/lib/agents/playwright-test-generate.prompt.md +8 -0
  41. package/dist/node_modules/playwright/lib/agents/playwright-test-generator.agent.md +88 -0
  42. package/dist/node_modules/playwright/lib/agents/playwright-test-heal.prompt.md +6 -0
  43. package/dist/node_modules/playwright/lib/agents/playwright-test-healer.agent.md +55 -0
  44. package/dist/node_modules/playwright/lib/agents/playwright-test-plan.prompt.md +9 -0
  45. package/dist/node_modules/playwright/lib/agents/playwright-test-planner.agent.md +73 -0
  46. package/dist/node_modules/playwright/lib/cli/client/appIcon.png +0 -0
  47. package/dist/node_modules/playwright/lib/cli/client/devtoolsApp.js +246 -0
  48. package/dist/node_modules/playwright/lib/cli/client/help.json +89 -0
  49. package/dist/node_modules/playwright/lib/cli/client/program.js +364 -0
  50. package/dist/node_modules/playwright/lib/cli/client/registry.js +146 -0
  51. package/dist/node_modules/playwright/lib/cli/client/session.js +309 -0
  52. package/dist/node_modules/playwright/lib/cli/client/socketConnection.js +99 -0
  53. package/dist/node_modules/playwright/lib/cli/daemon/command.js +73 -0
  54. package/dist/node_modules/playwright/lib/cli/daemon/commands.js +859 -0
  55. package/dist/node_modules/playwright/lib/cli/daemon/daemon.js +151 -0
  56. package/dist/node_modules/playwright/lib/cli/daemon/helpGenerator.js +173 -0
  57. package/dist/node_modules/playwright/lib/cli/daemon/program.js +109 -0
  58. package/dist/node_modules/playwright/lib/common/config.js +281 -0
  59. package/dist/node_modules/playwright/lib/common/configLoader.js +344 -0
  60. package/dist/node_modules/playwright/lib/common/esmLoaderHost.js +104 -0
  61. package/dist/node_modules/playwright/lib/common/expectBundle.js +28 -0
  62. package/dist/node_modules/playwright/lib/common/expectBundleImpl.js +407 -0
  63. package/dist/node_modules/playwright/lib/common/fixtures.js +302 -0
  64. package/dist/node_modules/playwright/lib/common/globals.js +58 -0
  65. package/dist/node_modules/playwright/lib/common/ipc.js +60 -0
  66. package/dist/node_modules/playwright/lib/common/poolBuilder.js +85 -0
  67. package/dist/node_modules/playwright/lib/common/process.js +132 -0
  68. package/dist/node_modules/playwright/lib/common/suiteUtils.js +140 -0
  69. package/dist/node_modules/playwright/lib/common/test.js +330 -0
  70. package/dist/node_modules/playwright/lib/common/testLoader.js +101 -0
  71. package/dist/node_modules/playwright/lib/common/testType.js +298 -0
  72. package/dist/node_modules/playwright/lib/common/validators.js +68 -0
  73. package/dist/node_modules/playwright/lib/fsWatcher.js +67 -0
  74. package/dist/node_modules/playwright/lib/index.js +726 -0
  75. package/dist/node_modules/playwright/lib/internalsForTest.js +42 -0
  76. package/dist/node_modules/playwright/lib/isomorphic/events.js +77 -0
  77. package/dist/node_modules/playwright/lib/isomorphic/folders.js +30 -0
  78. package/dist/node_modules/playwright/lib/isomorphic/stringInternPool.js +69 -0
  79. package/dist/node_modules/playwright/lib/isomorphic/teleReceiver.js +539 -0
  80. package/dist/node_modules/playwright/lib/isomorphic/teleSuiteUpdater.js +157 -0
  81. package/dist/node_modules/playwright/lib/isomorphic/testServerConnection.js +225 -0
  82. package/dist/node_modules/playwright/lib/isomorphic/testServerInterface.js +16 -0
  83. package/dist/node_modules/playwright/lib/isomorphic/testTree.js +329 -0
  84. package/dist/node_modules/playwright/lib/isomorphic/types.d.js +16 -0
  85. package/dist/node_modules/playwright/lib/loader/loaderMain.js +59 -0
  86. package/dist/node_modules/playwright/lib/matchers/expect.js +311 -0
  87. package/dist/node_modules/playwright/lib/matchers/matcherHint.js +44 -0
  88. package/dist/node_modules/playwright/lib/matchers/matchers.js +395 -0
  89. package/dist/node_modules/playwright/lib/matchers/toBeTruthy.js +75 -0
  90. package/dist/node_modules/playwright/lib/matchers/toEqual.js +100 -0
  91. package/dist/node_modules/playwright/lib/matchers/toHaveURL.js +101 -0
  92. package/dist/node_modules/playwright/lib/matchers/toMatchAriaSnapshot.js +159 -0
  93. package/dist/node_modules/playwright/lib/matchers/toMatchSnapshot.js +342 -0
  94. package/dist/node_modules/playwright/lib/matchers/toMatchText.js +99 -0
  95. package/dist/node_modules/playwright/lib/mcp/browser/browserContextFactory.js +332 -0
  96. package/dist/node_modules/playwright/lib/mcp/browser/browserServerBackend.js +85 -0
  97. package/dist/node_modules/playwright/lib/mcp/browser/config.js +467 -0
  98. package/dist/node_modules/playwright/lib/mcp/browser/configIni.js +190 -0
  99. package/dist/node_modules/playwright/lib/mcp/browser/context.js +302 -0
  100. package/dist/node_modules/playwright/lib/mcp/browser/logFile.js +96 -0
  101. package/dist/node_modules/playwright/lib/mcp/browser/response.js +270 -0
  102. package/dist/node_modules/playwright/lib/mcp/browser/sessionLog.js +75 -0
  103. package/dist/node_modules/playwright/lib/mcp/browser/tab.js +421 -0
  104. package/dist/node_modules/playwright/lib/mcp/browser/tools/common.js +63 -0
  105. package/dist/node_modules/playwright/lib/mcp/browser/tools/config.js +41 -0
  106. package/dist/node_modules/playwright/lib/mcp/browser/tools/console.js +65 -0
  107. package/dist/node_modules/playwright/lib/mcp/browser/tools/cookies.js +152 -0
  108. package/dist/node_modules/playwright/lib/mcp/browser/tools/devtools.js +42 -0
  109. package/dist/node_modules/playwright/lib/mcp/browser/tools/dialogs.js +59 -0
  110. package/dist/node_modules/playwright/lib/mcp/browser/tools/evaluate.js +61 -0
  111. package/dist/node_modules/playwright/lib/mcp/browser/tools/files.js +58 -0
  112. package/dist/node_modules/playwright/lib/mcp/browser/tools/form.js +63 -0
  113. package/dist/node_modules/playwright/lib/mcp/browser/tools/install.js +73 -0
  114. package/dist/node_modules/playwright/lib/mcp/browser/tools/keyboard.js +151 -0
  115. package/dist/node_modules/playwright/lib/mcp/browser/tools/mouse.js +159 -0
  116. package/dist/node_modules/playwright/lib/mcp/browser/tools/navigate.js +105 -0
  117. package/dist/node_modules/playwright/lib/mcp/browser/tools/network.js +92 -0
  118. package/dist/node_modules/playwright/lib/mcp/browser/tools/pdf.js +48 -0
  119. package/dist/node_modules/playwright/lib/mcp/browser/tools/route.js +140 -0
  120. package/dist/node_modules/playwright/lib/mcp/browser/tools/runCode.js +76 -0
  121. package/dist/node_modules/playwright/lib/mcp/browser/tools/screenshot.js +86 -0
  122. package/dist/node_modules/playwright/lib/mcp/browser/tools/snapshot.js +207 -0
  123. package/dist/node_modules/playwright/lib/mcp/browser/tools/storage.js +67 -0
  124. package/dist/node_modules/playwright/lib/mcp/browser/tools/tabs.js +67 -0
  125. package/dist/node_modules/playwright/lib/mcp/browser/tools/tool.js +47 -0
  126. package/dist/node_modules/playwright/lib/mcp/browser/tools/tracing.js +75 -0
  127. package/dist/node_modules/playwright/lib/mcp/browser/tools/utils.js +88 -0
  128. package/dist/node_modules/playwright/lib/mcp/browser/tools/verify.js +143 -0
  129. package/dist/node_modules/playwright/lib/mcp/browser/tools/video.js +89 -0
  130. package/dist/node_modules/playwright/lib/mcp/browser/tools/wait.js +63 -0
  131. package/dist/node_modules/playwright/lib/mcp/browser/tools/webstorage.js +223 -0
  132. package/dist/node_modules/playwright/lib/mcp/browser/tools.js +96 -0
  133. package/dist/node_modules/playwright/lib/mcp/browser/watchdog.js +44 -0
  134. package/dist/node_modules/playwright/lib/mcp/config.d.js +16 -0
  135. package/dist/node_modules/playwright/lib/mcp/extension/cdpRelay.js +354 -0
  136. package/dist/node_modules/playwright/lib/mcp/extension/extensionContextFactory.js +77 -0
  137. package/dist/node_modules/playwright/lib/mcp/extension/protocol.js +28 -0
  138. package/dist/node_modules/playwright/lib/mcp/index.js +61 -0
  139. package/dist/node_modules/playwright/lib/mcp/log.js +35 -0
  140. package/dist/node_modules/playwright/lib/mcp/program.js +76 -0
  141. package/dist/node_modules/playwright/lib/mcp/sdk/exports.js +28 -0
  142. package/dist/node_modules/playwright/lib/mcp/sdk/http.js +152 -0
  143. package/dist/node_modules/playwright/lib/mcp/sdk/inProcessTransport.js +71 -0
  144. package/dist/node_modules/playwright/lib/mcp/sdk/server.js +223 -0
  145. package/dist/node_modules/playwright/lib/mcp/sdk/tool.js +47 -0
  146. package/dist/node_modules/playwright/lib/mcp/test/browserBackend.js +98 -0
  147. package/dist/node_modules/playwright/lib/mcp/test/generatorTools.js +122 -0
  148. package/dist/node_modules/playwright/lib/mcp/test/plannerTools.js +145 -0
  149. package/dist/node_modules/playwright/lib/mcp/test/seed.js +82 -0
  150. package/dist/node_modules/playwright/lib/mcp/test/streams.js +44 -0
  151. package/dist/node_modules/playwright/lib/mcp/test/testBackend.js +99 -0
  152. package/dist/node_modules/playwright/lib/mcp/test/testContext.js +285 -0
  153. package/dist/node_modules/playwright/lib/mcp/test/testTool.js +30 -0
  154. package/dist/node_modules/playwright/lib/mcp/test/testTools.js +108 -0
  155. package/dist/node_modules/playwright/lib/plugins/gitCommitInfoPlugin.js +198 -0
  156. package/dist/node_modules/playwright/lib/plugins/index.js +28 -0
  157. package/dist/node_modules/playwright/lib/plugins/webServerPlugin.js +237 -0
  158. package/dist/node_modules/playwright/lib/program.js +425 -0
  159. package/dist/node_modules/playwright/lib/reporters/base.js +634 -0
  160. package/dist/node_modules/playwright/lib/reporters/blob.js +138 -0
  161. package/dist/node_modules/playwright/lib/reporters/dot.js +99 -0
  162. package/dist/node_modules/playwright/lib/reporters/empty.js +32 -0
  163. package/dist/node_modules/playwright/lib/reporters/github.js +128 -0
  164. package/dist/node_modules/playwright/lib/reporters/html.js +644 -0
  165. package/dist/node_modules/playwright/lib/reporters/internalReporter.js +138 -0
  166. package/dist/node_modules/playwright/lib/reporters/json.js +254 -0
  167. package/dist/node_modules/playwright/lib/reporters/junit.js +232 -0
  168. package/dist/node_modules/playwright/lib/reporters/line.js +131 -0
  169. package/dist/node_modules/playwright/lib/reporters/list.js +253 -0
  170. package/dist/node_modules/playwright/lib/reporters/listModeReporter.js +69 -0
  171. package/dist/node_modules/playwright/lib/reporters/markdown.js +144 -0
  172. package/dist/node_modules/playwright/lib/reporters/merge.js +579 -0
  173. package/dist/node_modules/playwright/lib/reporters/multiplexer.js +116 -0
  174. package/dist/node_modules/playwright/lib/reporters/reporterV2.js +102 -0
  175. package/dist/node_modules/playwright/lib/reporters/teleEmitter.js +319 -0
  176. package/dist/node_modules/playwright/lib/reporters/versions/blobV1.js +16 -0
  177. package/dist/node_modules/playwright/lib/runner/dispatcher.js +530 -0
  178. package/dist/node_modules/playwright/lib/runner/failureTracker.js +72 -0
  179. package/dist/node_modules/playwright/lib/runner/lastRun.js +77 -0
  180. package/dist/node_modules/playwright/lib/runner/loadUtils.js +334 -0
  181. package/dist/node_modules/playwright/lib/runner/loaderHost.js +89 -0
  182. package/dist/node_modules/playwright/lib/runner/processHost.js +180 -0
  183. package/dist/node_modules/playwright/lib/runner/projectUtils.js +241 -0
  184. package/dist/node_modules/playwright/lib/runner/rebase.js +189 -0
  185. package/dist/node_modules/playwright/lib/runner/reporters.js +143 -0
  186. package/dist/node_modules/playwright/lib/runner/sigIntWatcher.js +96 -0
  187. package/dist/node_modules/playwright/lib/runner/storage.js +91 -0
  188. package/dist/node_modules/playwright/lib/runner/taskRunner.js +127 -0
  189. package/dist/node_modules/playwright/lib/runner/tasks.js +410 -0
  190. package/dist/node_modules/playwright/lib/runner/testGroups.js +125 -0
  191. package/dist/node_modules/playwright/lib/runner/testRunner.js +398 -0
  192. package/dist/node_modules/playwright/lib/runner/testServer.js +269 -0
  193. package/dist/node_modules/playwright/lib/runner/uiModeReporter.js +30 -0
  194. package/dist/node_modules/playwright/lib/runner/vcs.js +72 -0
  195. package/dist/node_modules/playwright/lib/runner/watchMode.js +396 -0
  196. package/dist/node_modules/playwright/lib/runner/workerHost.js +104 -0
  197. package/dist/node_modules/playwright/lib/skill/SKILL.md +278 -0
  198. package/dist/node_modules/playwright/lib/skill/references/request-mocking.md +87 -0
  199. package/dist/node_modules/playwright/lib/skill/references/running-code.md +232 -0
  200. package/dist/node_modules/playwright/lib/skill/references/session-management.md +169 -0
  201. package/dist/node_modules/playwright/lib/skill/references/storage-state.md +275 -0
  202. package/dist/node_modules/playwright/lib/skill/references/test-generation.md +88 -0
  203. package/dist/node_modules/playwright/lib/skill/references/tracing.md +139 -0
  204. package/dist/node_modules/playwright/lib/skill/references/video-recording.md +43 -0
  205. package/dist/node_modules/playwright/lib/third_party/pirates.js +62 -0
  206. package/dist/node_modules/playwright/lib/third_party/tsconfig-loader.js +103 -0
  207. package/dist/node_modules/playwright/lib/transform/babelBundle.js +46 -0
  208. package/dist/node_modules/playwright/lib/transform/babelBundleImpl.js +461 -0
  209. package/dist/node_modules/playwright/lib/transform/compilationCache.js +274 -0
  210. package/dist/node_modules/playwright/lib/transform/esmLoader.js +103 -0
  211. package/dist/node_modules/playwright/lib/transform/md.js +221 -0
  212. package/dist/node_modules/playwright/lib/transform/portTransport.js +67 -0
  213. package/dist/node_modules/playwright/lib/transform/transform.js +303 -0
  214. package/dist/node_modules/playwright/lib/util.js +400 -0
  215. package/dist/node_modules/playwright/lib/utilsBundle.js +50 -0
  216. package/dist/node_modules/playwright/lib/utilsBundleImpl.js +103 -0
  217. package/dist/node_modules/playwright/lib/worker/fixtureRunner.js +262 -0
  218. package/dist/node_modules/playwright/lib/worker/testInfo.js +536 -0
  219. package/dist/node_modules/playwright/lib/worker/testTracing.js +345 -0
  220. package/dist/node_modules/playwright/lib/worker/timeoutManager.js +174 -0
  221. package/dist/node_modules/playwright/lib/worker/util.js +31 -0
  222. package/dist/node_modules/playwright/lib/worker/workerMain.js +532 -0
  223. package/dist/node_modules/playwright/node_modules/.bin/playwright-core +21 -0
  224. package/dist/node_modules/playwright/package.json +73 -0
  225. package/dist/node_modules/playwright/test.d.ts +18 -0
  226. package/dist/node_modules/playwright/test.js +24 -0
  227. package/dist/node_modules/playwright/test.mjs +34 -0
  228. package/dist/node_modules/playwright/types/test.d.ts +10326 -0
  229. package/dist/node_modules/playwright/types/testReporter.d.ts +822 -0
  230. package/dist/node_modules/playwright-core/LICENSE +202 -0
  231. package/dist/node_modules/playwright-core/NOTICE +5 -0
  232. package/dist/node_modules/playwright-core/README.md +3 -0
  233. package/dist/node_modules/playwright-core/ThirdPartyNotices.txt +4095 -0
  234. package/dist/node_modules/playwright-core/bin/install_media_pack.ps1 +5 -0
  235. package/dist/node_modules/playwright-core/bin/install_webkit_wsl.ps1 +33 -0
  236. package/dist/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh +42 -0
  237. package/dist/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh +13 -0
  238. package/dist/node_modules/playwright-core/bin/reinstall_chrome_beta_win.ps1 +24 -0
  239. package/dist/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh +42 -0
  240. package/dist/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh +12 -0
  241. package/dist/node_modules/playwright-core/bin/reinstall_chrome_stable_win.ps1 +24 -0
  242. package/dist/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh +48 -0
  243. package/dist/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh +11 -0
  244. package/dist/node_modules/playwright-core/bin/reinstall_msedge_beta_win.ps1 +23 -0
  245. package/dist/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh +48 -0
  246. package/dist/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh +11 -0
  247. package/dist/node_modules/playwright-core/bin/reinstall_msedge_dev_win.ps1 +23 -0
  248. package/dist/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh +48 -0
  249. package/dist/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh +11 -0
  250. package/dist/node_modules/playwright-core/bin/reinstall_msedge_stable_win.ps1 +24 -0
  251. package/dist/node_modules/playwright-core/browsers.json +81 -0
  252. package/dist/node_modules/playwright-core/cli.js +18 -0
  253. package/dist/node_modules/playwright-core/index.d.ts +17 -0
  254. package/dist/node_modules/playwright-core/index.js +32 -0
  255. package/dist/node_modules/playwright-core/index.mjs +28 -0
  256. package/dist/node_modules/playwright-core/lib/androidServerImpl.js +65 -0
  257. package/dist/node_modules/playwright-core/lib/browserServerImpl.js +120 -0
  258. package/dist/node_modules/playwright-core/lib/cli/driver.js +97 -0
  259. package/dist/node_modules/playwright-core/lib/cli/program.js +589 -0
  260. package/dist/node_modules/playwright-core/lib/cli/programWithTestStub.js +74 -0
  261. package/dist/node_modules/playwright-core/lib/client/android.js +361 -0
  262. package/dist/node_modules/playwright-core/lib/client/api.js +137 -0
  263. package/dist/node_modules/playwright-core/lib/client/artifact.js +79 -0
  264. package/dist/node_modules/playwright-core/lib/client/browser.js +161 -0
  265. package/dist/node_modules/playwright-core/lib/client/browserContext.js +589 -0
  266. package/dist/node_modules/playwright-core/lib/client/browserType.js +195 -0
  267. package/dist/node_modules/playwright-core/lib/client/cdpSession.js +51 -0
  268. package/dist/node_modules/playwright-core/lib/client/channelOwner.js +194 -0
  269. package/dist/node_modules/playwright-core/lib/client/clientHelper.js +64 -0
  270. package/dist/node_modules/playwright-core/lib/client/clientInstrumentation.js +55 -0
  271. package/dist/node_modules/playwright-core/lib/client/clientStackTrace.js +69 -0
  272. package/dist/node_modules/playwright-core/lib/client/clock.js +68 -0
  273. package/dist/node_modules/playwright-core/lib/client/connection.js +318 -0
  274. package/dist/node_modules/playwright-core/lib/client/consoleMessage.js +61 -0
  275. package/dist/node_modules/playwright-core/lib/client/coverage.js +44 -0
  276. package/dist/node_modules/playwright-core/lib/client/dialog.js +56 -0
  277. package/dist/node_modules/playwright-core/lib/client/download.js +62 -0
  278. package/dist/node_modules/playwright-core/lib/client/electron.js +138 -0
  279. package/dist/node_modules/playwright-core/lib/client/elementHandle.js +284 -0
  280. package/dist/node_modules/playwright-core/lib/client/errors.js +77 -0
  281. package/dist/node_modules/playwright-core/lib/client/eventEmitter.js +314 -0
  282. package/dist/node_modules/playwright-core/lib/client/events.js +103 -0
  283. package/dist/node_modules/playwright-core/lib/client/fetch.js +368 -0
  284. package/dist/node_modules/playwright-core/lib/client/fileChooser.js +46 -0
  285. package/dist/node_modules/playwright-core/lib/client/fileUtils.js +34 -0
  286. package/dist/node_modules/playwright-core/lib/client/frame.js +409 -0
  287. package/dist/node_modules/playwright-core/lib/client/harRouter.js +99 -0
  288. package/dist/node_modules/playwright-core/lib/client/input.js +84 -0
  289. package/dist/node_modules/playwright-core/lib/client/jsHandle.js +109 -0
  290. package/dist/node_modules/playwright-core/lib/client/jsonPipe.js +39 -0
  291. package/dist/node_modules/playwright-core/lib/client/localUtils.js +60 -0
  292. package/dist/node_modules/playwright-core/lib/client/locator.js +369 -0
  293. package/dist/node_modules/playwright-core/lib/client/network.js +747 -0
  294. package/dist/node_modules/playwright-core/lib/client/page.js +741 -0
  295. package/dist/node_modules/playwright-core/lib/client/pageAgent.js +64 -0
  296. package/dist/node_modules/playwright-core/lib/client/platform.js +77 -0
  297. package/dist/node_modules/playwright-core/lib/client/playwright.js +71 -0
  298. package/dist/node_modules/playwright-core/lib/client/selectors.js +55 -0
  299. package/dist/node_modules/playwright-core/lib/client/stream.js +39 -0
  300. package/dist/node_modules/playwright-core/lib/client/timeoutSettings.js +79 -0
  301. package/dist/node_modules/playwright-core/lib/client/tracing.js +119 -0
  302. package/dist/node_modules/playwright-core/lib/client/types.js +28 -0
  303. package/dist/node_modules/playwright-core/lib/client/video.js +63 -0
  304. package/dist/node_modules/playwright-core/lib/client/waiter.js +142 -0
  305. package/dist/node_modules/playwright-core/lib/client/webError.js +39 -0
  306. package/dist/node_modules/playwright-core/lib/client/webSocket.js +93 -0
  307. package/dist/node_modules/playwright-core/lib/client/worker.js +85 -0
  308. package/dist/node_modules/playwright-core/lib/client/writableStream.js +39 -0
  309. package/dist/node_modules/playwright-core/lib/generated/bindingsControllerSource.js +28 -0
  310. package/dist/node_modules/playwright-core/lib/generated/clockSource.js +28 -0
  311. package/dist/node_modules/playwright-core/lib/generated/injectedScriptSource.js +28 -0
  312. package/dist/node_modules/playwright-core/lib/generated/pollingRecorderSource.js +28 -0
  313. package/dist/node_modules/playwright-core/lib/generated/storageScriptSource.js +28 -0
  314. package/dist/node_modules/playwright-core/lib/generated/utilityScriptSource.js +28 -0
  315. package/dist/node_modules/playwright-core/lib/generated/webSocketMockSource.js +336 -0
  316. package/dist/node_modules/playwright-core/lib/inProcessFactory.js +60 -0
  317. package/dist/node_modules/playwright-core/lib/inprocess.js +3 -0
  318. package/dist/node_modules/playwright-core/lib/mcpBundle.js +84 -0
  319. package/dist/node_modules/playwright-core/lib/mcpBundleImpl/index.js +147 -0
  320. package/dist/node_modules/playwright-core/lib/outofprocess.js +76 -0
  321. package/dist/node_modules/playwright-core/lib/protocol/serializers.js +197 -0
  322. package/dist/node_modules/playwright-core/lib/protocol/validator.js +3017 -0
  323. package/dist/node_modules/playwright-core/lib/protocol/validatorPrimitives.js +193 -0
  324. package/dist/node_modules/playwright-core/lib/remote/playwrightConnection.js +129 -0
  325. package/dist/node_modules/playwright-core/lib/remote/playwrightServer.js +334 -0
  326. package/dist/node_modules/playwright-core/lib/server/agent/actionRunner.js +341 -0
  327. package/dist/node_modules/playwright-core/lib/server/agent/actions.js +128 -0
  328. package/dist/node_modules/playwright-core/lib/server/agent/codegen.js +111 -0
  329. package/dist/node_modules/playwright-core/lib/server/agent/context.js +161 -0
  330. package/dist/node_modules/playwright-core/lib/server/agent/expectTools.js +156 -0
  331. package/dist/node_modules/playwright-core/lib/server/agent/pageAgent.js +204 -0
  332. package/dist/node_modules/playwright-core/lib/server/agent/performTools.js +262 -0
  333. package/dist/node_modules/playwright-core/lib/server/agent/tool.js +109 -0
  334. package/dist/node_modules/playwright-core/lib/server/android/android.js +465 -0
  335. package/dist/node_modules/playwright-core/lib/server/android/backendAdb.js +177 -0
  336. package/dist/node_modules/playwright-core/lib/server/artifact.js +127 -0
  337. package/dist/node_modules/playwright-core/lib/server/bidi/bidiBrowser.js +549 -0
  338. package/dist/node_modules/playwright-core/lib/server/bidi/bidiChromium.js +164 -0
  339. package/dist/node_modules/playwright-core/lib/server/bidi/bidiConnection.js +213 -0
  340. package/dist/node_modules/playwright-core/lib/server/bidi/bidiDeserializer.js +116 -0
  341. package/dist/node_modules/playwright-core/lib/server/bidi/bidiExecutionContext.js +267 -0
  342. package/dist/node_modules/playwright-core/lib/server/bidi/bidiFirefox.js +128 -0
  343. package/dist/node_modules/playwright-core/lib/server/bidi/bidiInput.js +146 -0
  344. package/dist/node_modules/playwright-core/lib/server/bidi/bidiNetworkManager.js +410 -0
  345. package/dist/node_modules/playwright-core/lib/server/bidi/bidiOverCdp.js +102 -0
  346. package/dist/node_modules/playwright-core/lib/server/bidi/bidiPage.js +598 -0
  347. package/dist/node_modules/playwright-core/lib/server/bidi/bidiPdf.js +106 -0
  348. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
  349. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiKeyboard.js +256 -0
  350. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocol.js +24 -0
  351. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocolCore.js +180 -0
  352. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocolPermissions.js +42 -0
  353. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/bidiSerializer.js +148 -0
  354. package/dist/node_modules/playwright-core/lib/server/bidi/third_party/firefoxPrefs.js +261 -0
  355. package/dist/node_modules/playwright-core/lib/server/browser.js +143 -0
  356. package/dist/node_modules/playwright-core/lib/server/browserContext.js +712 -0
  357. package/dist/node_modules/playwright-core/lib/server/browserType.js +332 -0
  358. package/dist/node_modules/playwright-core/lib/server/callLog.js +82 -0
  359. package/dist/node_modules/playwright-core/lib/server/chromium/appIcon.png +0 -0
  360. package/dist/node_modules/playwright-core/lib/server/chromium/chromium.js +403 -0
  361. package/dist/node_modules/playwright-core/lib/server/chromium/chromiumSwitches.js +104 -0
  362. package/dist/node_modules/playwright-core/lib/server/chromium/crBrowser.js +523 -0
  363. package/dist/node_modules/playwright-core/lib/server/chromium/crConnection.js +197 -0
  364. package/dist/node_modules/playwright-core/lib/server/chromium/crCoverage.js +235 -0
  365. package/dist/node_modules/playwright-core/lib/server/chromium/crDevTools.js +111 -0
  366. package/dist/node_modules/playwright-core/lib/server/chromium/crDragDrop.js +131 -0
  367. package/dist/node_modules/playwright-core/lib/server/chromium/crExecutionContext.js +146 -0
  368. package/dist/node_modules/playwright-core/lib/server/chromium/crInput.js +187 -0
  369. package/dist/node_modules/playwright-core/lib/server/chromium/crNetworkManager.js +707 -0
  370. package/dist/node_modules/playwright-core/lib/server/chromium/crPage.js +1004 -0
  371. package/dist/node_modules/playwright-core/lib/server/chromium/crPdf.js +121 -0
  372. package/dist/node_modules/playwright-core/lib/server/chromium/crProtocolHelper.js +145 -0
  373. package/dist/node_modules/playwright-core/lib/server/chromium/crServiceWorker.js +136 -0
  374. package/dist/node_modules/playwright-core/lib/server/chromium/defaultFontFamilies.js +162 -0
  375. package/dist/node_modules/playwright-core/lib/server/chromium/protocol.d.js +16 -0
  376. package/dist/node_modules/playwright-core/lib/server/clock.js +149 -0
  377. package/dist/node_modules/playwright-core/lib/server/codegen/csharp.js +327 -0
  378. package/dist/node_modules/playwright-core/lib/server/codegen/java.js +274 -0
  379. package/dist/node_modules/playwright-core/lib/server/codegen/javascript.js +247 -0
  380. package/dist/node_modules/playwright-core/lib/server/codegen/jsonl.js +52 -0
  381. package/dist/node_modules/playwright-core/lib/server/codegen/language.js +132 -0
  382. package/dist/node_modules/playwright-core/lib/server/codegen/languages.js +68 -0
  383. package/dist/node_modules/playwright-core/lib/server/codegen/python.js +279 -0
  384. package/dist/node_modules/playwright-core/lib/server/codegen/types.js +16 -0
  385. package/dist/node_modules/playwright-core/lib/server/console.js +61 -0
  386. package/dist/node_modules/playwright-core/lib/server/cookieStore.js +206 -0
  387. package/dist/node_modules/playwright-core/lib/server/debugController.js +191 -0
  388. package/dist/node_modules/playwright-core/lib/server/debugger.js +119 -0
  389. package/dist/node_modules/playwright-core/lib/server/deviceDescriptors.js +39 -0
  390. package/dist/node_modules/playwright-core/lib/server/deviceDescriptorsSource.json +1779 -0
  391. package/dist/node_modules/playwright-core/lib/server/devtoolsController.js +365 -0
  392. package/dist/node_modules/playwright-core/lib/server/dialog.js +116 -0
  393. package/dist/node_modules/playwright-core/lib/server/dispatchers/androidDispatcher.js +325 -0
  394. package/dist/node_modules/playwright-core/lib/server/dispatchers/artifactDispatcher.js +118 -0
  395. package/dist/node_modules/playwright-core/lib/server/dispatchers/browserContextDispatcher.js +383 -0
  396. package/dist/node_modules/playwright-core/lib/server/dispatchers/browserDispatcher.js +118 -0
  397. package/dist/node_modules/playwright-core/lib/server/dispatchers/browserTypeDispatcher.js +71 -0
  398. package/dist/node_modules/playwright-core/lib/server/dispatchers/cdpSessionDispatcher.js +44 -0
  399. package/dist/node_modules/playwright-core/lib/server/dispatchers/debugControllerDispatcher.js +78 -0
  400. package/dist/node_modules/playwright-core/lib/server/dispatchers/dialogDispatcher.js +47 -0
  401. package/dist/node_modules/playwright-core/lib/server/dispatchers/dispatcher.js +364 -0
  402. package/dist/node_modules/playwright-core/lib/server/dispatchers/electronDispatcher.js +90 -0
  403. package/dist/node_modules/playwright-core/lib/server/dispatchers/elementHandlerDispatcher.js +181 -0
  404. package/dist/node_modules/playwright-core/lib/server/dispatchers/frameDispatcher.js +227 -0
  405. package/dist/node_modules/playwright-core/lib/server/dispatchers/jsHandleDispatcher.js +85 -0
  406. package/dist/node_modules/playwright-core/lib/server/dispatchers/jsonPipeDispatcher.js +58 -0
  407. package/dist/node_modules/playwright-core/lib/server/dispatchers/localUtilsDispatcher.js +149 -0
  408. package/dist/node_modules/playwright-core/lib/server/dispatchers/networkDispatchers.js +211 -0
  409. package/dist/node_modules/playwright-core/lib/server/dispatchers/pageAgentDispatcher.js +106 -0
  410. package/dist/node_modules/playwright-core/lib/server/dispatchers/pageDispatcher.js +410 -0
  411. package/dist/node_modules/playwright-core/lib/server/dispatchers/playwrightDispatcher.js +108 -0
  412. package/dist/node_modules/playwright-core/lib/server/dispatchers/streamDispatcher.js +67 -0
  413. package/dist/node_modules/playwright-core/lib/server/dispatchers/tracingDispatcher.js +68 -0
  414. package/dist/node_modules/playwright-core/lib/server/dispatchers/webSocketRouteDispatcher.js +164 -0
  415. package/dist/node_modules/playwright-core/lib/server/dispatchers/writableStreamDispatcher.js +79 -0
  416. package/dist/node_modules/playwright-core/lib/server/dom.js +815 -0
  417. package/dist/node_modules/playwright-core/lib/server/download.js +70 -0
  418. package/dist/node_modules/playwright-core/lib/server/electron/electron.js +272 -0
  419. package/dist/node_modules/playwright-core/lib/server/electron/loader.js +30 -0
  420. package/dist/node_modules/playwright-core/lib/server/errors.js +69 -0
  421. package/dist/node_modules/playwright-core/lib/server/fetch.js +621 -0
  422. package/dist/node_modules/playwright-core/lib/server/fileChooser.js +43 -0
  423. package/dist/node_modules/playwright-core/lib/server/fileUploadUtils.js +84 -0
  424. package/dist/node_modules/playwright-core/lib/server/firefox/ffBrowser.js +415 -0
  425. package/dist/node_modules/playwright-core/lib/server/firefox/ffConnection.js +142 -0
  426. package/dist/node_modules/playwright-core/lib/server/firefox/ffExecutionContext.js +150 -0
  427. package/dist/node_modules/playwright-core/lib/server/firefox/ffInput.js +159 -0
  428. package/dist/node_modules/playwright-core/lib/server/firefox/ffNetworkManager.js +256 -0
  429. package/dist/node_modules/playwright-core/lib/server/firefox/ffPage.js +495 -0
  430. package/dist/node_modules/playwright-core/lib/server/firefox/firefox.js +114 -0
  431. package/dist/node_modules/playwright-core/lib/server/firefox/protocol.d.js +16 -0
  432. package/dist/node_modules/playwright-core/lib/server/formData.js +147 -0
  433. package/dist/node_modules/playwright-core/lib/server/frameSelectors.js +160 -0
  434. package/dist/node_modules/playwright-core/lib/server/frames.js +1476 -0
  435. package/dist/node_modules/playwright-core/lib/server/har/harRecorder.js +147 -0
  436. package/dist/node_modules/playwright-core/lib/server/har/harTracer.js +607 -0
  437. package/dist/node_modules/playwright-core/lib/server/harBackend.js +157 -0
  438. package/dist/node_modules/playwright-core/lib/server/helper.js +96 -0
  439. package/dist/node_modules/playwright-core/lib/server/index.js +56 -0
  440. package/dist/node_modules/playwright-core/lib/server/input.js +277 -0
  441. package/dist/node_modules/playwright-core/lib/server/instrumentation.js +72 -0
  442. package/dist/node_modules/playwright-core/lib/server/javascript.js +291 -0
  443. package/dist/node_modules/playwright-core/lib/server/launchApp.js +128 -0
  444. package/dist/node_modules/playwright-core/lib/server/localUtils.js +214 -0
  445. package/dist/node_modules/playwright-core/lib/server/macEditingCommands.js +143 -0
  446. package/dist/node_modules/playwright-core/lib/server/network.js +667 -0
  447. package/dist/node_modules/playwright-core/lib/server/page.js +839 -0
  448. package/dist/node_modules/playwright-core/lib/server/pipeTransport.js +89 -0
  449. package/dist/node_modules/playwright-core/lib/server/playwright.js +69 -0
  450. package/dist/node_modules/playwright-core/lib/server/progress.js +136 -0
  451. package/dist/node_modules/playwright-core/lib/server/protocolError.js +52 -0
  452. package/dist/node_modules/playwright-core/lib/server/recorder/chat.js +161 -0
  453. package/dist/node_modules/playwright-core/lib/server/recorder/recorderApp.js +366 -0
  454. package/dist/node_modules/playwright-core/lib/server/recorder/recorderRunner.js +138 -0
  455. package/dist/node_modules/playwright-core/lib/server/recorder/recorderSignalProcessor.js +83 -0
  456. package/dist/node_modules/playwright-core/lib/server/recorder/recorderUtils.js +157 -0
  457. package/dist/node_modules/playwright-core/lib/server/recorder/throttledFile.js +57 -0
  458. package/dist/node_modules/playwright-core/lib/server/recorder.js +527 -0
  459. package/dist/node_modules/playwright-core/lib/server/registry/browserFetcher.js +177 -0
  460. package/dist/node_modules/playwright-core/lib/server/registry/dependencies.js +371 -0
  461. package/dist/node_modules/playwright-core/lib/server/registry/index.js +1391 -0
  462. package/dist/node_modules/playwright-core/lib/server/registry/nativeDeps.js +1281 -0
  463. package/dist/node_modules/playwright-core/lib/server/registry/oopDownloadBrowserMain.js +127 -0
  464. package/dist/node_modules/playwright-core/lib/server/screencast.js +204 -0
  465. package/dist/node_modules/playwright-core/lib/server/screenshotter.js +333 -0
  466. package/dist/node_modules/playwright-core/lib/server/selectors.js +112 -0
  467. package/dist/node_modules/playwright-core/lib/server/socksClientCertificatesInterceptor.js +383 -0
  468. package/dist/node_modules/playwright-core/lib/server/socksInterceptor.js +95 -0
  469. package/dist/node_modules/playwright-core/lib/server/trace/recorder/snapshotter.js +147 -0
  470. package/dist/node_modules/playwright-core/lib/server/trace/recorder/snapshotterInjected.js +561 -0
  471. package/dist/node_modules/playwright-core/lib/server/trace/recorder/tracing.js +604 -0
  472. package/dist/node_modules/playwright-core/lib/server/trace/viewer/traceParser.js +72 -0
  473. package/dist/node_modules/playwright-core/lib/server/trace/viewer/traceViewer.js +245 -0
  474. package/dist/node_modules/playwright-core/lib/server/transport.js +181 -0
  475. package/dist/node_modules/playwright-core/lib/server/types.js +28 -0
  476. package/dist/node_modules/playwright-core/lib/server/usKeyboardLayout.js +145 -0
  477. package/dist/node_modules/playwright-core/lib/server/utils/ascii.js +44 -0
  478. package/dist/node_modules/playwright-core/lib/server/utils/comparators.js +139 -0
  479. package/dist/node_modules/playwright-core/lib/server/utils/crypto.js +216 -0
  480. package/dist/node_modules/playwright-core/lib/server/utils/debug.js +42 -0
  481. package/dist/node_modules/playwright-core/lib/server/utils/debugLogger.js +122 -0
  482. package/dist/node_modules/playwright-core/lib/server/utils/env.js +73 -0
  483. package/dist/node_modules/playwright-core/lib/server/utils/eventsHelper.js +39 -0
  484. package/dist/node_modules/playwright-core/lib/server/utils/expectUtils.js +123 -0
  485. package/dist/node_modules/playwright-core/lib/server/utils/fileUtils.js +191 -0
  486. package/dist/node_modules/playwright-core/lib/server/utils/happyEyeballs.js +207 -0
  487. package/dist/node_modules/playwright-core/lib/server/utils/hostPlatform.js +138 -0
  488. package/dist/node_modules/playwright-core/lib/server/utils/httpServer.js +205 -0
  489. package/dist/node_modules/playwright-core/lib/server/utils/imageUtils.js +141 -0
  490. package/dist/node_modules/playwright-core/lib/server/utils/image_tools/colorUtils.js +89 -0
  491. package/dist/node_modules/playwright-core/lib/server/utils/image_tools/compare.js +109 -0
  492. package/dist/node_modules/playwright-core/lib/server/utils/image_tools/imageChannel.js +78 -0
  493. package/dist/node_modules/playwright-core/lib/server/utils/image_tools/stats.js +102 -0
  494. package/dist/node_modules/playwright-core/lib/server/utils/linuxUtils.js +71 -0
  495. package/dist/node_modules/playwright-core/lib/server/utils/network.js +242 -0
  496. package/dist/node_modules/playwright-core/lib/server/utils/nodePlatform.js +154 -0
  497. package/dist/node_modules/playwright-core/lib/server/utils/pipeTransport.js +84 -0
  498. package/dist/node_modules/playwright-core/lib/server/utils/processLauncher.js +242 -0
  499. package/dist/node_modules/playwright-core/lib/server/utils/profiler.js +65 -0
  500. package/dist/node_modules/playwright-core/lib/server/utils/socksProxy.js +511 -0
  501. package/dist/node_modules/playwright-core/lib/server/utils/spawnAsync.js +41 -0
  502. package/dist/node_modules/playwright-core/lib/server/utils/task.js +51 -0
  503. package/dist/node_modules/playwright-core/lib/server/utils/userAgent.js +98 -0
  504. package/dist/node_modules/playwright-core/lib/server/utils/wsServer.js +121 -0
  505. package/dist/node_modules/playwright-core/lib/server/utils/zipFile.js +74 -0
  506. package/dist/node_modules/playwright-core/lib/server/utils/zones.js +57 -0
  507. package/dist/node_modules/playwright-core/lib/server/videoRecorder.js +133 -0
  508. package/dist/node_modules/playwright-core/lib/server/webkit/protocol.d.js +16 -0
  509. package/dist/node_modules/playwright-core/lib/server/webkit/webkit.js +108 -0
  510. package/dist/node_modules/playwright-core/lib/server/webkit/wkBrowser.js +331 -0
  511. package/dist/node_modules/playwright-core/lib/server/webkit/wkConnection.js +144 -0
  512. package/dist/node_modules/playwright-core/lib/server/webkit/wkExecutionContext.js +154 -0
  513. package/dist/node_modules/playwright-core/lib/server/webkit/wkInput.js +181 -0
  514. package/dist/node_modules/playwright-core/lib/server/webkit/wkInterceptableRequest.js +197 -0
  515. package/dist/node_modules/playwright-core/lib/server/webkit/wkPage.js +1163 -0
  516. package/dist/node_modules/playwright-core/lib/server/webkit/wkProvisionalPage.js +83 -0
  517. package/dist/node_modules/playwright-core/lib/server/webkit/wkWorkers.js +106 -0
  518. package/dist/node_modules/playwright-core/lib/third_party/pixelmatch.js +255 -0
  519. package/dist/node_modules/playwright-core/lib/utils/isomorphic/ariaSnapshot.js +455 -0
  520. package/dist/node_modules/playwright-core/lib/utils/isomorphic/assert.js +31 -0
  521. package/dist/node_modules/playwright-core/lib/utils/isomorphic/colors.js +72 -0
  522. package/dist/node_modules/playwright-core/lib/utils/isomorphic/cssParser.js +245 -0
  523. package/dist/node_modules/playwright-core/lib/utils/isomorphic/cssTokenizer.js +1051 -0
  524. package/dist/node_modules/playwright-core/lib/utils/isomorphic/headers.js +53 -0
  525. package/dist/node_modules/playwright-core/lib/utils/isomorphic/locatorGenerators.js +689 -0
  526. package/dist/node_modules/playwright-core/lib/utils/isomorphic/locatorParser.js +176 -0
  527. package/dist/node_modules/playwright-core/lib/utils/isomorphic/locatorUtils.js +81 -0
  528. package/dist/node_modules/playwright-core/lib/utils/isomorphic/lruCache.js +51 -0
  529. package/dist/node_modules/playwright-core/lib/utils/isomorphic/manualPromise.js +114 -0
  530. package/dist/node_modules/playwright-core/lib/utils/isomorphic/mimeType.js +459 -0
  531. package/dist/node_modules/playwright-core/lib/utils/isomorphic/multimap.js +80 -0
  532. package/dist/node_modules/playwright-core/lib/utils/isomorphic/protocolFormatter.js +81 -0
  533. package/dist/node_modules/playwright-core/lib/utils/isomorphic/protocolMetainfo.js +338 -0
  534. package/dist/node_modules/playwright-core/lib/utils/isomorphic/rtti.js +43 -0
  535. package/dist/node_modules/playwright-core/lib/utils/isomorphic/selectorParser.js +386 -0
  536. package/dist/node_modules/playwright-core/lib/utils/isomorphic/semaphore.js +54 -0
  537. package/dist/node_modules/playwright-core/lib/utils/isomorphic/stackTrace.js +158 -0
  538. package/dist/node_modules/playwright-core/lib/utils/isomorphic/stringUtils.js +204 -0
  539. package/dist/node_modules/playwright-core/lib/utils/isomorphic/time.js +49 -0
  540. package/dist/node_modules/playwright-core/lib/utils/isomorphic/timeoutRunner.js +66 -0
  541. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/entries.js +16 -0
  542. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/snapshotRenderer.js +502 -0
  543. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/snapshotServer.js +120 -0
  544. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/snapshotStorage.js +89 -0
  545. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/traceLoader.js +131 -0
  546. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/traceModel.js +365 -0
  547. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/traceModernizer.js +400 -0
  548. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV3.js +16 -0
  549. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV4.js +16 -0
  550. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV5.js +16 -0
  551. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV6.js +16 -0
  552. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV7.js +16 -0
  553. package/dist/node_modules/playwright-core/lib/utils/isomorphic/trace/versions/traceV8.js +16 -0
  554. package/dist/node_modules/playwright-core/lib/utils/isomorphic/traceUtils.js +58 -0
  555. package/dist/node_modules/playwright-core/lib/utils/isomorphic/types.js +16 -0
  556. package/dist/node_modules/playwright-core/lib/utils/isomorphic/urlMatch.js +243 -0
  557. package/dist/node_modules/playwright-core/lib/utils/isomorphic/utilityScriptSerializers.js +262 -0
  558. package/dist/node_modules/playwright-core/lib/utils/isomorphic/yaml.js +84 -0
  559. package/dist/node_modules/playwright-core/lib/utils.js +111 -0
  560. package/dist/node_modules/playwright-core/lib/utilsBundle.js +112 -0
  561. package/dist/node_modules/playwright-core/lib/utilsBundleImpl/index.js +220 -0
  562. package/dist/node_modules/playwright-core/lib/utilsBundleImpl/xdg-open +1066 -0
  563. package/dist/node_modules/playwright-core/lib/vite/devtools/assets/index-BlUdtOgD.js +50 -0
  564. package/dist/node_modules/playwright-core/lib/vite/devtools/assets/index-CcsbAkl3.css +1 -0
  565. package/dist/node_modules/playwright-core/lib/vite/devtools/index.html +28 -0
  566. package/dist/node_modules/playwright-core/lib/vite/htmlReport/index.html +84 -0
  567. package/dist/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DYBRYzYX.css +1 -0
  568. package/dist/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DadYNm1I.js +32 -0
  569. package/dist/node_modules/playwright-core/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf +0 -0
  570. package/dist/node_modules/playwright-core/lib/vite/recorder/assets/index-BSjZa4pk.css +1 -0
  571. package/dist/node_modules/playwright-core/lib/vite/recorder/assets/index-BhTWtUlo.js +193 -0
  572. package/dist/node_modules/playwright-core/lib/vite/recorder/index.html +29 -0
  573. package/dist/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg +9 -0
  574. package/dist/node_modules/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-DgOX2t83.js +32 -0
  575. package/dist/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-Dlnhdtv5.js +266 -0
  576. package/dist/node_modules/playwright-core/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js +9 -0
  577. package/dist/node_modules/playwright-core/lib/vite/traceViewer/codeMirrorModule.DYBRYzYX.css +1 -0
  578. package/dist/node_modules/playwright-core/lib/vite/traceViewer/codicon.DCmgc-ay.ttf +0 -0
  579. package/dist/node_modules/playwright-core/lib/vite/traceViewer/defaultSettingsView.Cqh7ej8a.css +1 -0
  580. package/dist/node_modules/playwright-core/lib/vite/traceViewer/index.BVu7tZDe.css +1 -0
  581. package/dist/node_modules/playwright-core/lib/vite/traceViewer/index.DQVmDDrI.js +2 -0
  582. package/dist/node_modules/playwright-core/lib/vite/traceViewer/index.html +43 -0
  583. package/dist/node_modules/playwright-core/lib/vite/traceViewer/manifest.webmanifest +16 -0
  584. package/dist/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg +9 -0
  585. package/dist/node_modules/playwright-core/lib/vite/traceViewer/snapshot.html +21 -0
  586. package/dist/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js +5 -0
  587. package/dist/node_modules/playwright-core/lib/vite/traceViewer/uiMode.Btcz36p_.css +1 -0
  588. package/dist/node_modules/playwright-core/lib/vite/traceViewer/uiMode.D_PBkkZn.js +5 -0
  589. package/dist/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html +17 -0
  590. package/dist/node_modules/playwright-core/lib/vite/traceViewer/xtermModule.DYP7pi_n.css +32 -0
  591. package/dist/node_modules/playwright-core/lib/zipBundle.js +34 -0
  592. package/dist/node_modules/playwright-core/lib/zipBundleImpl.js +5 -0
  593. package/dist/node_modules/playwright-core/package.json +43 -0
  594. package/dist/node_modules/playwright-core/types/protocol.d.ts +24365 -0
  595. package/dist/node_modules/playwright-core/types/structs.d.ts +45 -0
  596. package/dist/node_modules/playwright-core/types/types.d.ts +23332 -0
  597. package/dist/playwright-cli.js +7 -1
  598. package/dist/stably-plugin-cli/skills/ai-to-programmatic-migration/SKILL.md +95 -0
  599. package/dist/stably-plugin-cli/skills/browser-interaction-guide/SKILL.md +67 -1
  600. package/dist/stably-plugin-cli/skills/bulk-test-handling/SKILL.md +4 -0
  601. package/dist/stably-plugin-cli/skills/debugging-test-failures/SKILL.md +73 -8
  602. package/dist/stably-plugin-cli/skills/playwright-cli/SKILL.md +32 -0
  603. package/dist/stably-plugin-cli/skills/stably-cli/SKILL.md +34 -16
  604. package/package.json +2 -2
@@ -0,0 +1,88 @@
1
+ ---
2
+ name: playwright-test-generator
3
+ description: Use this agent when you need to create automated browser tests using Playwright
4
+ model: sonnet
5
+ color: blue
6
+ tools:
7
+ - search
8
+ - playwright-test/browser_click
9
+ - playwright-test/browser_drag
10
+ - playwright-test/browser_evaluate
11
+ - playwright-test/browser_file_upload
12
+ - playwright-test/browser_handle_dialog
13
+ - playwright-test/browser_hover
14
+ - playwright-test/browser_navigate
15
+ - playwright-test/browser_press_key
16
+ - playwright-test/browser_select_option
17
+ - playwright-test/browser_snapshot
18
+ - playwright-test/browser_type
19
+ - playwright-test/browser_verify_element_visible
20
+ - playwright-test/browser_verify_list_visible
21
+ - playwright-test/browser_verify_text_visible
22
+ - playwright-test/browser_verify_value
23
+ - playwright-test/browser_wait_for
24
+ - playwright-test/generator_read_log
25
+ - playwright-test/generator_setup_page
26
+ - playwright-test/generator_write_test
27
+ ---
28
+
29
+ You are a Playwright Test Generator, an expert in browser automation and end-to-end testing.
30
+ Your specialty is creating robust, reliable Playwright tests that accurately simulate user interactions and validate
31
+ application behavior.
32
+
33
+ # For each test you generate
34
+ - Obtain the test plan with all the steps and verification specification
35
+ - Run the `generator_setup_page` tool to set up page for the scenario
36
+ - For each step and verification in the scenario, do the following:
37
+ - Use Playwright tool to manually execute it in real-time.
38
+ - Use the step description as the intent for each Playwright tool call.
39
+ - Retrieve generator log via `generator_read_log`
40
+ - Immediately after reading the test log, invoke `generator_write_test` with the generated source code
41
+ - File should contain single test
42
+ - File name must be fs-friendly scenario name
43
+ - Test must be placed in a describe matching the top-level test plan item
44
+ - Test title must match the scenario name
45
+ - Includes a comment with the step text before each step execution. Do not duplicate comments if step requires
46
+ multiple actions.
47
+ - Always use best practices from the log when generating tests.
48
+
49
+ <example-generation>
50
+ For following plan:
51
+
52
+ ```markdown file=specs/plan.md
53
+ ### 1. Adding New Todos
54
+ **Seed:** `tests/seed.spec.ts`
55
+
56
+ #### 1.1 Add Valid Todo
57
+ **Steps:**
58
+ 1. Click in the "What needs to be done?" input field
59
+
60
+ #### 1.2 Add Multiple Todos
61
+ ...
62
+ ```
63
+
64
+ Following file is generated:
65
+
66
+ ```ts file=add-valid-todo.spec.ts
67
+ // spec: specs/plan.md
68
+ // seed: tests/seed.spec.ts
69
+
70
+ test.describe('Adding New Todos', () => {
71
+ test('Add Valid Todo', async { page } => {
72
+ // 1. Click in the "What needs to be done?" input field
73
+ await page.click(...);
74
+
75
+ ...
76
+ });
77
+ });
78
+ ```
79
+ </example-generation>
80
+
81
+ <example>
82
+ Context: User wants to generate a test for the test plan item.
83
+ <test-suite><!-- Verbatim name of the test spec group w/o ordinal like "Multiplication tests" --></test-suite>
84
+ <test-name><!-- Name of the test case without the ordinal like "should add two numbers" --></test-name>
85
+ <test-file><!-- Name of the file to save the test into, like tests/multiplication/should-add-two-numbers.spec.ts --></test-file>
86
+ <seed-file><!-- Seed file path from test plan --></seed-file>
87
+ <body><!-- Test case content including steps and expectations --></body>
88
+ </example>
@@ -0,0 +1,6 @@
1
+ ---
2
+ agent: playwright-test-healer
3
+ description: Fix tests
4
+ ---
5
+
6
+ Run all my tests and fix the failing ones.
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: playwright-test-healer
3
+ description: Use this agent when you need to debug and fix failing Playwright tests
4
+ model: sonnet
5
+ color: red
6
+ tools:
7
+ - search
8
+ - edit
9
+ - playwright-test/browser_console_messages
10
+ - playwright-test/browser_evaluate
11
+ - playwright-test/browser_generate_locator
12
+ - playwright-test/browser_network_requests
13
+ - playwright-test/browser_snapshot
14
+ - playwright-test/test_debug
15
+ - playwright-test/test_list
16
+ - playwright-test/test_run
17
+ ---
18
+
19
+ You are the Playwright Test Healer, an expert test automation engineer specializing in debugging and
20
+ resolving Playwright test failures. Your mission is to systematically identify, diagnose, and fix
21
+ broken Playwright tests using a methodical approach.
22
+
23
+ Your workflow:
24
+ 1. **Initial Execution**: Run all tests using `test_run` tool to identify failing tests
25
+ 2. **Debug failed tests**: For each failing test run `test_debug`.
26
+ 3. **Error Investigation**: When the test pauses on errors, use available Playwright MCP tools to:
27
+ - Examine the error details
28
+ - Capture page snapshot to understand the context
29
+ - Analyze selectors, timing issues, or assertion failures
30
+ 4. **Root Cause Analysis**: Determine the underlying cause of the failure by examining:
31
+ - Element selectors that may have changed
32
+ - Timing and synchronization issues
33
+ - Data dependencies or test environment problems
34
+ - Application changes that broke test assumptions
35
+ 5. **Code Remediation**: Edit the test code to address identified issues, focusing on:
36
+ - Updating selectors to match current application state
37
+ - Fixing assertions and expected values
38
+ - Improving test reliability and maintainability
39
+ - For inherently dynamic data, utilize regular expressions to produce resilient locators
40
+ 6. **Verification**: Restart the test after each fix to validate the changes
41
+ 7. **Iteration**: Repeat the investigation and fixing process until the test passes cleanly
42
+
43
+ Key principles:
44
+ - Be systematic and thorough in your debugging approach
45
+ - Document your findings and reasoning for each fix
46
+ - Prefer robust, maintainable solutions over quick hacks
47
+ - Use Playwright best practices for reliable test automation
48
+ - If multiple errors exist, fix them one at a time and retest
49
+ - Provide clear explanations of what was broken and how you fixed it
50
+ - You will continue this process until the test runs successfully without any failures or errors.
51
+ - If the error persists and you have high level of confidence that the test is correct, mark this test as test.fixme()
52
+ so that it is skipped during the execution. Add a comment before the failing step explaining what is happening instead
53
+ of the expected behavior.
54
+ - Do not ask user questions, you are not interactive tool, do the most reasonable thing possible to pass the test.
55
+ - Never wait for networkidle or use other discouraged or deprecated apis
@@ -0,0 +1,9 @@
1
+ ---
2
+ agent: playwright-test-planner
3
+ description: Create test plan
4
+ ---
5
+
6
+ Create test plan for "add to cart" functionality of my app.
7
+
8
+ - Seed file: `${seedFile}`
9
+ - Test plan: `specs/coverage.plan.md`
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: playwright-test-planner
3
+ description: Use this agent when you need to create comprehensive test plan for a web application or website
4
+ model: sonnet
5
+ color: green
6
+ tools:
7
+ - search
8
+ - playwright-test/browser_click
9
+ - playwright-test/browser_close
10
+ - playwright-test/browser_console_messages
11
+ - playwright-test/browser_drag
12
+ - playwright-test/browser_evaluate
13
+ - playwright-test/browser_file_upload
14
+ - playwright-test/browser_handle_dialog
15
+ - playwright-test/browser_hover
16
+ - playwright-test/browser_navigate
17
+ - playwright-test/browser_navigate_back
18
+ - playwright-test/browser_network_requests
19
+ - playwright-test/browser_press_key
20
+ - playwright-test/browser_run_code
21
+ - playwright-test/browser_select_option
22
+ - playwright-test/browser_snapshot
23
+ - playwright-test/browser_take_screenshot
24
+ - playwright-test/browser_type
25
+ - playwright-test/browser_wait_for
26
+ - playwright-test/planner_setup_page
27
+ - playwright-test/planner_save_plan
28
+ ---
29
+
30
+ You are an expert web test planner with extensive experience in quality assurance, user experience testing, and test
31
+ scenario design. Your expertise includes functional testing, edge case identification, and comprehensive test coverage
32
+ planning.
33
+
34
+ You will:
35
+
36
+ 1. **Navigate and Explore**
37
+ - Invoke the `planner_setup_page` tool once to set up page before using any other tools
38
+ - Explore the browser snapshot
39
+ - Do not take screenshots unless absolutely necessary
40
+ - Use `browser_*` tools to navigate and discover interface
41
+ - Thoroughly explore the interface, identifying all interactive elements, forms, navigation paths, and functionality
42
+
43
+ 2. **Analyze User Flows**
44
+ - Map out the primary user journeys and identify critical paths through the application
45
+ - Consider different user types and their typical behaviors
46
+
47
+ 3. **Design Comprehensive Scenarios**
48
+
49
+ Create detailed test scenarios that cover:
50
+ - Happy path scenarios (normal user behavior)
51
+ - Edge cases and boundary conditions
52
+ - Error handling and validation
53
+
54
+ 4. **Structure Test Plans**
55
+
56
+ Each scenario must include:
57
+ - Clear, descriptive title
58
+ - Detailed step-by-step instructions
59
+ - Expected outcomes where appropriate
60
+ - Assumptions about starting state (always assume blank/fresh state)
61
+ - Success criteria and failure conditions
62
+
63
+ 5. **Create Documentation**
64
+
65
+ Submit your test plan using `planner_save_plan` tool.
66
+
67
+ **Quality Standards**:
68
+ - Write steps that are specific enough for any tester to follow
69
+ - Include negative testing scenarios
70
+ - Ensure scenarios are independent and can be run in any order
71
+
72
+ **Output Format**: Always save the complete test plan as a markdown file with clear headings, numbered steps, and
73
+ professional formatting suitable for sharing with development and QA teams.
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var devtoolsApp_exports = {};
30
+ __export(devtoolsApp_exports, {
31
+ syncLocalStorageWithSettings: () => syncLocalStorageWithSettings
32
+ });
33
+ module.exports = __toCommonJS(devtoolsApp_exports);
34
+ var import_fs = __toESM(require("fs"));
35
+ var import_path = __toESM(require("path"));
36
+ var import_os = __toESM(require("os"));
37
+ var import_net = __toESM(require("net"));
38
+ var import_playwright_core = require("playwright-core");
39
+ var import_utils = require("playwright-core/lib/utils");
40
+ var import_registry = require("playwright-core/lib/server/registry/index");
41
+ var import_registry2 = require("./registry");
42
+ var import_session = require("./session");
43
+ function readBody(request) {
44
+ return new Promise((resolve, reject) => {
45
+ const chunks = [];
46
+ request.on("data", (chunk) => chunks.push(chunk));
47
+ request.on("end", () => {
48
+ try {
49
+ const text = Buffer.concat(chunks).toString();
50
+ resolve(text ? JSON.parse(text) : {});
51
+ } catch (e) {
52
+ reject(e);
53
+ }
54
+ });
55
+ request.on("error", reject);
56
+ });
57
+ }
58
+ function sendJSON(response, data, statusCode = 200) {
59
+ response.statusCode = statusCode;
60
+ response.setHeader("Content-Type", "application/json");
61
+ response.end(JSON.stringify(data));
62
+ }
63
+ async function handleApiRequest(clientInfo, request, response) {
64
+ const url = new URL(request.url, `http://${request.headers.host}`);
65
+ const apiPath = url.pathname;
66
+ if (apiPath === "/api/sessions/list" && request.method === "GET") {
67
+ const registry = await import_registry2.Registry.load();
68
+ const sessions = [];
69
+ for (const [, entries] of registry.entryMap()) {
70
+ for (const entry of entries) {
71
+ const session = new import_session.Session(clientInfo, entry.config);
72
+ const canConnect = await session.canConnect();
73
+ if (canConnect || entry.config.cli.persistent)
74
+ sessions.push({ config: entry.config, canConnect });
75
+ }
76
+ }
77
+ sendJSON(response, { sessions, clientInfo });
78
+ return;
79
+ }
80
+ if (apiPath === "/api/sessions/close" && request.method === "POST") {
81
+ const body = await readBody(request);
82
+ if (!body.config)
83
+ throw new Error('Missing "config" parameter');
84
+ await new import_session.Session(clientInfo, body.config).stop();
85
+ sendJSON(response, { success: true });
86
+ return;
87
+ }
88
+ if (apiPath === "/api/sessions/delete-data" && request.method === "POST") {
89
+ const body = await readBody(request);
90
+ if (!body.config)
91
+ throw new Error('Missing "config" parameter');
92
+ await new import_session.Session(clientInfo, body.config).deleteData();
93
+ sendJSON(response, { success: true });
94
+ return;
95
+ }
96
+ if (apiPath === "/api/sessions/run" && request.method === "POST") {
97
+ const body = await readBody(request);
98
+ if (!body.config)
99
+ throw new Error('Missing "config" parameter');
100
+ if (!body.args)
101
+ throw new Error('Missing "args" parameter');
102
+ const result = await new import_session.Session(clientInfo, body.config).run(body.args);
103
+ sendJSON(response, { result });
104
+ return;
105
+ }
106
+ if (apiPath === "/api/sessions/devtools-start" && request.method === "POST") {
107
+ const body = await readBody(request);
108
+ if (!body.config)
109
+ throw new Error('Missing "config" parameter');
110
+ const result = await new import_session.Session(clientInfo, body.config).run({ _: ["devtools-start"] });
111
+ const match = result.text.match(/Server is listening on: (.+)/);
112
+ if (!match)
113
+ throw new Error("Failed to parse screencast URL from: " + result.text);
114
+ sendJSON(response, { url: match[1] });
115
+ return;
116
+ }
117
+ response.statusCode = 404;
118
+ response.end(JSON.stringify({ error: "Not found" }));
119
+ }
120
+ async function openDevToolsApp() {
121
+ const httpServer = new import_utils.HttpServer();
122
+ const libDir = require.resolve("playwright-core/package.json");
123
+ const devtoolsDir = import_path.default.join(import_path.default.dirname(libDir), "lib/vite/devtools");
124
+ const clientInfo = (0, import_registry2.createClientInfo)();
125
+ httpServer.routePrefix("/api/", (request, response) => {
126
+ handleApiRequest(clientInfo, request, response).catch((e) => {
127
+ response.statusCode = 500;
128
+ response.end(JSON.stringify({ error: e.message }));
129
+ });
130
+ return true;
131
+ });
132
+ httpServer.routePrefix("/", (request, response) => {
133
+ const pathname = new URL(request.url, `http://${request.headers.host}`).pathname;
134
+ const filePath = pathname === "/" ? "index.html" : pathname.substring(1);
135
+ const resolved = import_path.default.join(devtoolsDir, filePath);
136
+ if (!resolved.startsWith(devtoolsDir))
137
+ return false;
138
+ return httpServer.serveFile(request, response, resolved);
139
+ });
140
+ await httpServer.start();
141
+ const url = httpServer.urlPrefix("human-readable");
142
+ const { page } = await launchApp("devtools");
143
+ await page.goto(url);
144
+ return page;
145
+ }
146
+ async function launchApp(appName) {
147
+ const channel = (0, import_registry.findChromiumChannelBestEffort)("javascript");
148
+ const context = await import_playwright_core.chromium.launchPersistentContext("", {
149
+ ignoreDefaultArgs: ["--enable-automation"],
150
+ channel,
151
+ headless: false,
152
+ args: [
153
+ "--app=data:text/html,",
154
+ "--test-type=",
155
+ `--window-size=1280,800`,
156
+ `--window-position=100,100`
157
+ ],
158
+ viewport: null
159
+ });
160
+ const [page] = context.pages();
161
+ if (process.platform === "darwin") {
162
+ context.on("page", async (newPage) => {
163
+ if (newPage.mainFrame().url() === "chrome://new-tab-page/") {
164
+ await page.bringToFront();
165
+ await newPage.close();
166
+ }
167
+ });
168
+ }
169
+ page.on("close", () => {
170
+ (0, import_utils.gracefullyProcessExitDoNotHang)(0);
171
+ });
172
+ const image = await import_fs.default.promises.readFile(import_path.default.join(__dirname, "appIcon.png"));
173
+ await page._setDockTile(image);
174
+ await syncLocalStorageWithSettings(page, appName);
175
+ return { context, page };
176
+ }
177
+ async function syncLocalStorageWithSettings(page, appName) {
178
+ const settingsFile = import_path.default.join(import_registry.registryDirectory, ".settings", `${appName}.json`);
179
+ await page.exposeBinding("_saveSerializedSettings", (_, settings2) => {
180
+ import_fs.default.mkdirSync(import_path.default.dirname(settingsFile), { recursive: true });
181
+ import_fs.default.writeFileSync(settingsFile, settings2);
182
+ });
183
+ const settings = await import_fs.default.promises.readFile(settingsFile, "utf-8").catch(() => "{}");
184
+ await page.addInitScript(
185
+ `(${String((settings2) => {
186
+ if (location && location.protocol === "data:")
187
+ return;
188
+ if (window.top !== window)
189
+ return;
190
+ Object.entries(settings2).map(([k, v]) => localStorage[k] = v);
191
+ window.saveSettings = () => {
192
+ window._saveSerializedSettings(JSON.stringify({ ...localStorage }));
193
+ };
194
+ })})(${settings});
195
+ `
196
+ );
197
+ }
198
+ function socketsDirectory() {
199
+ return process.env.PLAYWRIGHT_DAEMON_SOCKETS_DIR || import_path.default.join(import_os.default.tmpdir(), "playwright-cli");
200
+ }
201
+ function devtoolsSocketPath() {
202
+ return process.platform === "win32" ? `\\\\.\\pipe\\playwright-devtools-${process.env.USERNAME || "default"}` : import_path.default.join(socketsDirectory(), "devtools.sock");
203
+ }
204
+ async function acquireSingleton() {
205
+ const socketPath = devtoolsSocketPath();
206
+ return await new Promise((resolve, reject) => {
207
+ const server = import_net.default.createServer();
208
+ server.listen(socketPath, () => resolve(server));
209
+ server.on("error", (err) => {
210
+ if (err.code !== "EADDRINUSE")
211
+ return reject(err);
212
+ const client = import_net.default.connect(socketPath, () => {
213
+ client.write("bringToFront");
214
+ client.end();
215
+ reject(new Error("already running"));
216
+ });
217
+ client.on("error", () => {
218
+ if (process.platform !== "win32")
219
+ import_fs.default.unlinkSync(socketPath);
220
+ server.listen(socketPath, () => resolve(server));
221
+ });
222
+ });
223
+ });
224
+ }
225
+ async function main() {
226
+ let server;
227
+ process.on("exit", () => server?.close());
228
+ try {
229
+ server = await acquireSingleton();
230
+ } catch {
231
+ return;
232
+ }
233
+ const page = await openDevToolsApp();
234
+ server.on("connection", (socket) => {
235
+ socket.on("data", (data) => {
236
+ if (data.toString() === "bringToFront")
237
+ page?.bringToFront().catch(() => {
238
+ });
239
+ });
240
+ });
241
+ }
242
+ void main();
243
+ // Annotate the CommonJS export names for ESM import in node:
244
+ 0 && (module.exports = {
245
+ syncLocalStorageWithSettings
246
+ });
@@ -0,0 +1,89 @@
1
+ {
2
+ "global": "Usage: playwright-cli <command> [args] [options]\nUsage: playwright-cli -s=<session> <command> [args] [options]\n\nCore:\n open [url] open the browser\n close close the browser\n goto <url> navigate to a url\n type <text> type text into editable element\n click <ref> [button] perform click on a web page\n dblclick <ref> [button] perform double click on a web page\n fill <ref> <text> fill text into editable element\n drag <startRef> <endRef> perform drag and drop between two elements\n hover <ref> hover over element on page\n select <ref> <val> select an option in a dropdown\n upload <file> upload one or multiple files\n check <ref> check a checkbox or radio button\n uncheck <ref> uncheck a checkbox or radio button\n snapshot capture page snapshot to obtain element ref\n eval <func> [ref] evaluate javascript expression on page or element\n dialog-accept [prompt] accept a dialog\n dialog-dismiss dismiss a dialog\n resize <w> <h> resize the browser window\n delete-data delete session data\n\nNavigation:\n go-back go back to the previous page\n go-forward go forward to the next page\n reload reload the current page\n\nKeyboard:\n press <key> press a key on the keyboard, `a`, `arrowleft`\n keydown <key> press a key down on the keyboard\n keyup <key> press a key up on the keyboard\n\nMouse:\n mousemove <x> <y> move mouse to a given position\n mousedown [button] press mouse down\n mouseup [button] press mouse up\n mousewheel <dx> <dy> scroll mouse wheel\n\nSave as:\n screenshot [ref] screenshot of the current page or element\n pdf save page as pdf\n\nTabs:\n tab-list list all tabs\n tab-new [url] create a new tab\n tab-close [index] close a browser tab\n tab-select <index> select a browser tab\n\nStorage:\n state-load <filename> loads browser storage (authentication) state from a file\n state-save [filename] saves the current storage (authentication) state to a file\n cookie-list list all cookies (optionally filtered by domain/path)\n cookie-get <name> get a specific cookie by name\n cookie-set <name> <value> set a cookie with optional flags\n cookie-delete <name> delete a specific cookie\n cookie-clear clear all cookies\n localstorage-list list all localstorage key-value pairs\n localstorage-get <key> get a localstorage item by key\n localstorage-set <key> <value> set a localstorage item\n localstorage-delete <key> delete a localstorage item\n localstorage-clear clear all localstorage\n sessionstorage-list list all sessionstorage key-value pairs\n sessionstorage-get <key> get a sessionstorage item by key\n sessionstorage-set <key> <value> set a sessionstorage item\n sessionstorage-delete <key> delete a sessionstorage item\n sessionstorage-clear clear all sessionstorage\n\nNetwork:\n route <pattern> mock network requests matching a url pattern\n route-list list all active network routes\n unroute [pattern] remove routes matching a pattern (or all routes)\n\nDevTools:\n console [min-level] list console messages\n run-code <code> run playwright code snippet\n network list all network requests since loading the page\n tracing-start start trace recording\n tracing-stop stop trace recording\n video-start start video recording\n video-stop stop video recording\n show show browser devtools\n devtools-start show browser devtools\n\nInstall:\n install initialize workspace\n install-browser install browser\n\nBrowser sessions:\n list list browser sessions\n close-all close all browser sessions\n kill-all forcefully kill all browser sessions (for stale/zombie processes)\n\nGlobal options:\n --help [command] print help\n --version print version",
3
+ "commands": {
4
+ "open": "playwright-cli open [url]\n\nOpen the browser\n\nArguments:\n [url] the url to navigate to\nOptions:\n --browser browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge.\n --config path to the configuration file, defaults to .playwright/cli.config.json\n --extension connect to browser extension\n --headed run browser in headed mode\n --persistent use persistent browser profile\n --profile use persistent browser profile, store profile in specified directory.",
5
+ "close": "playwright-cli close \n\nClose the browser\n",
6
+ "goto": "playwright-cli goto <url>\n\nNavigate to a URL\n\nArguments:\n <url> the url to navigate to",
7
+ "type": "playwright-cli type <text>\n\nType text into editable element\n\nArguments:\n <text> text to type into the element\nOptions:\n --submit whether to submit entered text (press enter after)",
8
+ "click": "playwright-cli click <ref> [button]\n\nPerform click on a web page\n\nArguments:\n <ref> exact target element reference from the page snapshot\n [button] button to click, defaults to left\nOptions:\n --modifiers modifier keys to press",
9
+ "dblclick": "playwright-cli dblclick <ref> [button]\n\nPerform double click on a web page\n\nArguments:\n <ref> exact target element reference from the page snapshot\n [button] button to click, defaults to left\nOptions:\n --modifiers modifier keys to press",
10
+ "fill": "playwright-cli fill <ref> <text>\n\nFill text into editable element\n\nArguments:\n <ref> exact target element reference from the page snapshot\n <text> text to fill into the element\nOptions:\n --submit whether to submit entered text (press enter after)",
11
+ "drag": "playwright-cli drag <startRef> <endRef>\n\nPerform drag and drop between two elements\n\nArguments:\n <startRef> exact source element reference from the page snapshot\n <endRef> exact target element reference from the page snapshot",
12
+ "hover": "playwright-cli hover <ref>\n\nHover over element on page\n\nArguments:\n <ref> exact target element reference from the page snapshot",
13
+ "select": "playwright-cli select <ref> <val>\n\nSelect an option in a dropdown\n\nArguments:\n <ref> exact target element reference from the page snapshot\n <val> value to select in the dropdown",
14
+ "upload": "playwright-cli upload <file>\n\nUpload one or multiple files\n\nArguments:\n <file> the absolute paths to the files to upload",
15
+ "check": "playwright-cli check <ref>\n\nCheck a checkbox or radio button\n\nArguments:\n <ref> exact target element reference from the page snapshot",
16
+ "uncheck": "playwright-cli uncheck <ref>\n\nUncheck a checkbox or radio button\n\nArguments:\n <ref> exact target element reference from the page snapshot",
17
+ "snapshot": "playwright-cli snapshot \n\nCapture page snapshot to obtain element ref\n\nOptions:\n --filename save snapshot to markdown file instead of returning it in the response.",
18
+ "eval": "playwright-cli eval <func> [ref]\n\nEvaluate JavaScript expression on page or element\n\nArguments:\n <func> () => { /* code */ } or (element) => { /* code */ } when element is provided\n [ref] exact target element reference from the page snapshot",
19
+ "console": "playwright-cli console [min-level]\n\nList console messages\n\nArguments:\n [min-level] level of the console messages to return. each level includes the messages of more severe levels. defaults to \"info\".\nOptions:\n --clear whether to clear the console list",
20
+ "dialog-accept": "playwright-cli dialog-accept [prompt]\n\nAccept a dialog\n\nArguments:\n [prompt] the text of the prompt in case of a prompt dialog.",
21
+ "dialog-dismiss": "playwright-cli dialog-dismiss \n\nDismiss a dialog\n",
22
+ "resize": "playwright-cli resize <w> <h>\n\nResize the browser window\n\nArguments:\n <w> width of the browser window\n <h> height of the browser window",
23
+ "run-code": "playwright-cli run-code <code>\n\nRun Playwright code snippet\n\nArguments:\n <code> a javascript function containing playwright code to execute. it will be invoked with a single argument, page, which you can use for any page interaction.",
24
+ "delete-data": "playwright-cli delete-data \n\nDelete session data\n",
25
+ "go-back": "playwright-cli go-back \n\nGo back to the previous page\n",
26
+ "go-forward": "playwright-cli go-forward \n\nGo forward to the next page\n",
27
+ "reload": "playwright-cli reload \n\nReload the current page\n",
28
+ "press": "playwright-cli press <key>\n\nPress a key on the keyboard, `a`, `ArrowLeft`\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`",
29
+ "keydown": "playwright-cli keydown <key>\n\nPress a key down on the keyboard\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`",
30
+ "keyup": "playwright-cli keyup <key>\n\nPress a key up on the keyboard\n\nArguments:\n <key> name of the key to press or a character to generate, such as `arrowleft` or `a`",
31
+ "mousemove": "playwright-cli mousemove <x> <y>\n\nMove mouse to a given position\n\nArguments:\n <x> x coordinate\n <y> y coordinate",
32
+ "mousedown": "playwright-cli mousedown [button]\n\nPress mouse down\n\nArguments:\n [button] button to press, defaults to left",
33
+ "mouseup": "playwright-cli mouseup [button]\n\nPress mouse up\n\nArguments:\n [button] button to press, defaults to left",
34
+ "mousewheel": "playwright-cli mousewheel <dx> <dy>\n\nScroll mouse wheel\n\nArguments:\n <dx> y delta\n <dy> x delta",
35
+ "screenshot": "playwright-cli screenshot [ref]\n\nscreenshot of the current page or element\n\nArguments:\n [ref] exact target element reference from the page snapshot.\nOptions:\n --filename file name to save the screenshot to. defaults to `page-{timestamp}.{png|jpeg}` if not specified.\n --full-page when true, takes a screenshot of the full scrollable page, instead of the currently visible viewport.",
36
+ "pdf": "playwright-cli pdf \n\nSave page as PDF\n\nOptions:\n --filename file name to save the pdf to. defaults to `page-{timestamp}.pdf` if not specified.",
37
+ "tab-list": "playwright-cli tab-list \n\nList all tabs\n",
38
+ "tab-new": "playwright-cli tab-new [url]\n\nCreate a new tab\n\nArguments:\n [url] the url to navigate to in the new tab. if omitted, the new tab will be blank.",
39
+ "tab-close": "playwright-cli tab-close [index]\n\nClose a browser tab\n\nArguments:\n [index] tab index. if omitted, current tab is closed.",
40
+ "tab-select": "playwright-cli tab-select <index>\n\nSelect a browser tab\n\nArguments:\n <index> tab index",
41
+ "state-load": "playwright-cli state-load <filename>\n\nLoads browser storage (authentication) state from a file\n\nArguments:\n <filename> file name to load the storage state from.",
42
+ "state-save": "playwright-cli state-save [filename]\n\nSaves the current storage (authentication) state to a file\n\nArguments:\n [filename] file name to save the storage state to.",
43
+ "cookie-list": "playwright-cli cookie-list \n\nList all cookies (optionally filtered by domain/path)\n\nOptions:\n --domain filter cookies by domain\n --path filter cookies by path",
44
+ "cookie-get": "playwright-cli cookie-get <name>\n\nGet a specific cookie by name\n\nArguments:\n <name> cookie name",
45
+ "cookie-set": "playwright-cli cookie-set <name> <value>\n\nSet a cookie with optional flags\n\nArguments:\n <name> cookie name\n <value> cookie value\nOptions:\n --domain cookie domain\n --path cookie path\n --expires cookie expiration as unix timestamp\n --httpOnly whether the cookie is http only\n --secure whether the cookie is secure\n --sameSite cookie samesite attribute",
46
+ "cookie-delete": "playwright-cli cookie-delete <name>\n\nDelete a specific cookie\n\nArguments:\n <name> cookie name",
47
+ "cookie-clear": "playwright-cli cookie-clear \n\nClear all cookies\n",
48
+ "localstorage-list": "playwright-cli localstorage-list \n\nList all localStorage key-value pairs\n",
49
+ "localstorage-get": "playwright-cli localstorage-get <key>\n\nGet a localStorage item by key\n\nArguments:\n <key> key to get",
50
+ "localstorage-set": "playwright-cli localstorage-set <key> <value>\n\nSet a localStorage item\n\nArguments:\n <key> key to set\n <value> value to set",
51
+ "localstorage-delete": "playwright-cli localstorage-delete <key>\n\nDelete a localStorage item\n\nArguments:\n <key> key to delete",
52
+ "localstorage-clear": "playwright-cli localstorage-clear \n\nClear all localStorage\n",
53
+ "sessionstorage-list": "playwright-cli sessionstorage-list \n\nList all sessionStorage key-value pairs\n",
54
+ "sessionstorage-get": "playwright-cli sessionstorage-get <key>\n\nGet a sessionStorage item by key\n\nArguments:\n <key> key to get",
55
+ "sessionstorage-set": "playwright-cli sessionstorage-set <key> <value>\n\nSet a sessionStorage item\n\nArguments:\n <key> key to set\n <value> value to set",
56
+ "sessionstorage-delete": "playwright-cli sessionstorage-delete <key>\n\nDelete a sessionStorage item\n\nArguments:\n <key> key to delete",
57
+ "sessionstorage-clear": "playwright-cli sessionstorage-clear \n\nClear all sessionStorage\n",
58
+ "route": "playwright-cli route <pattern>\n\nMock network requests matching a URL pattern\n\nArguments:\n <pattern> url pattern to match (e.g., \"**/api/users\")\nOptions:\n --status http status code (default: 200)\n --body response body (text or json string)\n --content-type content-type header\n --header header to add in \"name: value\" format (repeatable)\n --remove-header comma-separated header names to remove",
59
+ "route-list": "playwright-cli route-list \n\nList all active network routes\n",
60
+ "unroute": "playwright-cli unroute [pattern]\n\nRemove routes matching a pattern (or all routes)\n\nArguments:\n [pattern] url pattern to unroute (omit to remove all)",
61
+ "config-print": "playwright-cli config-print \n\nPrint the final resolved config after merging CLI options, environment variables and config file.\n",
62
+ "install": "playwright-cli install \n\nInitialize workspace\n\nOptions:\n --skills install skills for claude / github copilot",
63
+ "install-browser": "playwright-cli install-browser \n\nInstall browser\n\nOptions:\n --browser browser or chrome channel to use, possible values: chrome, firefox, webkit, msedge",
64
+ "network": "playwright-cli network \n\nList all network requests since loading the page\n\nOptions:\n --static whether to include successful static resources like images, fonts, scripts, etc. defaults to false.\n --clear whether to clear the network list",
65
+ "tracing-start": "playwright-cli tracing-start \n\nStart trace recording\n",
66
+ "tracing-stop": "playwright-cli tracing-stop \n\nStop trace recording\n",
67
+ "video-start": "playwright-cli video-start \n\nStart video recording\n",
68
+ "video-stop": "playwright-cli video-stop \n\nStop video recording\n\nOptions:\n --filename filename to save the video.",
69
+ "show": "playwright-cli show \n\nShow browser DevTools\n",
70
+ "devtools-start": "playwright-cli devtools-start \n\nShow browser DevTools\n",
71
+ "list": "playwright-cli list \n\nList browser sessions\n\nOptions:\n --all list all browser sessions across all workspaces",
72
+ "close-all": "playwright-cli close-all \n\nClose all browser sessions\n",
73
+ "kill-all": "playwright-cli kill-all \n\nForcefully kill all browser sessions (for stale/zombie processes)\n",
74
+ "tray": "playwright-cli tray \n\nRun tray\n"
75
+ },
76
+ "booleanOptions": [
77
+ "extension",
78
+ "headed",
79
+ "persistent",
80
+ "submit",
81
+ "clear",
82
+ "full-page",
83
+ "httpOnly",
84
+ "secure",
85
+ "skills",
86
+ "static",
87
+ "all"
88
+ ]
89
+ }