@zohodesk/testinglibrary 3.2.11 → 3.2.13

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 (529) hide show
  1. package/build/common/searchFake/steps/searchFake.spec.js +2 -2
  2. package/npm-shrinkwrap.json +265 -253
  3. package/package.json +3 -3
  4. package/playwright-mcp-test/node_modules/.package-lock.json +54 -0
  5. package/playwright-mcp-test/node_modules/@playwright/mcp/LICENSE +202 -0
  6. package/playwright-mcp-test/node_modules/@playwright/mcp/README.md +907 -0
  7. package/playwright-mcp-test/node_modules/@playwright/mcp/cli.js +24 -0
  8. package/playwright-mcp-test/node_modules/@playwright/mcp/config.d.ts +174 -0
  9. package/playwright-mcp-test/node_modules/@playwright/mcp/index.d.ts +23 -0
  10. package/playwright-mcp-test/node_modules/@playwright/mcp/index.js +19 -0
  11. package/playwright-mcp-test/node_modules/@playwright/mcp/package.json +52 -0
  12. package/playwright-mcp-test/node_modules/playwright/LICENSE +202 -0
  13. package/playwright-mcp-test/node_modules/playwright/NOTICE +5 -0
  14. package/playwright-mcp-test/node_modules/playwright/README.md +168 -0
  15. package/playwright-mcp-test/node_modules/playwright/ThirdPartyNotices.txt +6277 -0
  16. package/playwright-mcp-test/node_modules/playwright/cli.js +19 -0
  17. package/playwright-mcp-test/node_modules/playwright/index.d.ts +17 -0
  18. package/playwright-mcp-test/node_modules/playwright/index.js +17 -0
  19. package/playwright-mcp-test/node_modules/playwright/index.mjs +18 -0
  20. package/playwright-mcp-test/node_modules/playwright/jsx-runtime.js +42 -0
  21. package/playwright-mcp-test/node_modules/playwright/jsx-runtime.mjs +21 -0
  22. package/playwright-mcp-test/node_modules/playwright/lib/agents/generateAgents.js +368 -0
  23. package/playwright-mcp-test/node_modules/playwright/lib/agents/generator.agent.md +101 -0
  24. package/playwright-mcp-test/node_modules/playwright/lib/agents/healer.agent.md +77 -0
  25. package/playwright-mcp-test/node_modules/playwright/lib/agents/planner.agent.md +138 -0
  26. package/playwright-mcp-test/node_modules/playwright/lib/agents/test-coverage.prompt.md +31 -0
  27. package/playwright-mcp-test/node_modules/playwright/lib/agents/test-generate.prompt.md +8 -0
  28. package/playwright-mcp-test/node_modules/playwright/lib/agents/test-heal.prompt.md +6 -0
  29. package/playwright-mcp-test/node_modules/playwright/lib/agents/test-plan.prompt.md +9 -0
  30. package/playwright-mcp-test/node_modules/playwright/lib/common/config.js +280 -0
  31. package/playwright-mcp-test/node_modules/playwright/lib/common/configLoader.js +344 -0
  32. package/playwright-mcp-test/node_modules/playwright/lib/common/esmLoaderHost.js +102 -0
  33. package/playwright-mcp-test/node_modules/playwright/lib/common/expectBundle.js +52 -0
  34. package/playwright-mcp-test/node_modules/playwright/lib/common/expectBundleImpl.js +389 -0
  35. package/playwright-mcp-test/node_modules/playwright/lib/common/fixtures.js +302 -0
  36. package/playwright-mcp-test/node_modules/playwright/lib/common/globals.js +58 -0
  37. package/playwright-mcp-test/node_modules/playwright/lib/common/ipc.js +60 -0
  38. package/playwright-mcp-test/node_modules/playwright/lib/common/poolBuilder.js +85 -0
  39. package/playwright-mcp-test/node_modules/playwright/lib/common/process.js +104 -0
  40. package/playwright-mcp-test/node_modules/playwright/lib/common/suiteUtils.js +140 -0
  41. package/playwright-mcp-test/node_modules/playwright/lib/common/test.js +321 -0
  42. package/playwright-mcp-test/node_modules/playwright/lib/common/testLoader.js +101 -0
  43. package/playwright-mcp-test/node_modules/playwright/lib/common/testType.js +298 -0
  44. package/playwright-mcp-test/node_modules/playwright/lib/common/validators.js +68 -0
  45. package/playwright-mcp-test/node_modules/playwright/lib/fsWatcher.js +67 -0
  46. package/playwright-mcp-test/node_modules/playwright/lib/index.js +682 -0
  47. package/playwright-mcp-test/node_modules/playwright/lib/internalsForTest.js +42 -0
  48. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/events.js +77 -0
  49. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/folders.js +30 -0
  50. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/stringInternPool.js +69 -0
  51. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/teleReceiver.js +508 -0
  52. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/teleSuiteUpdater.js +137 -0
  53. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/testServerConnection.js +211 -0
  54. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/testServerInterface.js +16 -0
  55. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/testTree.js +334 -0
  56. package/playwright-mcp-test/node_modules/playwright/lib/isomorphic/types.d.js +16 -0
  57. package/playwright-mcp-test/node_modules/playwright/lib/loader/loaderMain.js +59 -0
  58. package/playwright-mcp-test/node_modules/playwright/lib/matchers/expect.js +325 -0
  59. package/playwright-mcp-test/node_modules/playwright/lib/matchers/matcherHint.js +87 -0
  60. package/playwright-mcp-test/node_modules/playwright/lib/matchers/matchers.js +366 -0
  61. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toBeTruthy.js +73 -0
  62. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toEqual.js +99 -0
  63. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toHaveURL.js +102 -0
  64. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toMatchAriaSnapshot.js +159 -0
  65. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toMatchSnapshot.js +341 -0
  66. package/playwright-mcp-test/node_modules/playwright/lib/matchers/toMatchText.js +99 -0
  67. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/actions.d.js +16 -0
  68. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/browserContextFactory.js +296 -0
  69. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/browserServerBackend.js +76 -0
  70. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/codegen.js +66 -0
  71. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/config.js +385 -0
  72. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/context.js +287 -0
  73. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/response.js +228 -0
  74. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/sessionLog.js +160 -0
  75. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tab.js +280 -0
  76. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/common.js +63 -0
  77. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/console.js +44 -0
  78. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/dialogs.js +60 -0
  79. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/evaluate.js +69 -0
  80. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/files.js +58 -0
  81. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/form.js +73 -0
  82. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/install.js +69 -0
  83. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/keyboard.js +84 -0
  84. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/mouse.js +107 -0
  85. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/navigate.js +62 -0
  86. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/network.js +54 -0
  87. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/pdf.js +59 -0
  88. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/screenshot.js +106 -0
  89. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/snapshot.js +181 -0
  90. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/tabs.js +67 -0
  91. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/tool.js +49 -0
  92. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/tracing.js +74 -0
  93. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/utils.js +89 -0
  94. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/verify.js +153 -0
  95. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools/wait.js +63 -0
  96. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/tools.js +80 -0
  97. package/playwright-mcp-test/node_modules/playwright/lib/mcp/browser/watchdog.js +44 -0
  98. package/playwright-mcp-test/node_modules/playwright/lib/mcp/config.d.js +16 -0
  99. package/playwright-mcp-test/node_modules/playwright/lib/mcp/extension/cdpRelay.js +351 -0
  100. package/playwright-mcp-test/node_modules/playwright/lib/mcp/extension/extensionContextFactory.js +75 -0
  101. package/playwright-mcp-test/node_modules/playwright/lib/mcp/extension/protocol.js +28 -0
  102. package/playwright-mcp-test/node_modules/playwright/lib/mcp/index.js +61 -0
  103. package/playwright-mcp-test/node_modules/playwright/lib/mcp/log.js +35 -0
  104. package/playwright-mcp-test/node_modules/playwright/lib/mcp/program.js +96 -0
  105. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/bundle.js +81 -0
  106. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/exports.js +32 -0
  107. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/http.js +187 -0
  108. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/inProcessTransport.js +71 -0
  109. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/mdb.js +206 -0
  110. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/proxyBackend.js +128 -0
  111. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/server.js +189 -0
  112. package/playwright-mcp-test/node_modules/playwright/lib/mcp/sdk/tool.js +51 -0
  113. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/browserBackend.js +98 -0
  114. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/generatorTools.js +122 -0
  115. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/plannerTools.js +46 -0
  116. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/seed.js +82 -0
  117. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/streams.js +39 -0
  118. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/testBackend.js +97 -0
  119. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/testContext.js +176 -0
  120. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/testTool.js +30 -0
  121. package/playwright-mcp-test/node_modules/playwright/lib/mcp/test/testTools.js +115 -0
  122. package/playwright-mcp-test/node_modules/playwright/lib/mcpBundleImpl.js +41 -0
  123. package/playwright-mcp-test/node_modules/playwright/lib/plugins/gitCommitInfoPlugin.js +198 -0
  124. package/playwright-mcp-test/node_modules/playwright/lib/plugins/index.js +28 -0
  125. package/playwright-mcp-test/node_modules/playwright/lib/plugins/webServerPlugin.js +209 -0
  126. package/playwright-mcp-test/node_modules/playwright/lib/program.js +411 -0
  127. package/playwright-mcp-test/node_modules/playwright/lib/reporters/base.js +609 -0
  128. package/playwright-mcp-test/node_modules/playwright/lib/reporters/blob.js +135 -0
  129. package/playwright-mcp-test/node_modules/playwright/lib/reporters/dot.js +82 -0
  130. package/playwright-mcp-test/node_modules/playwright/lib/reporters/empty.js +32 -0
  131. package/playwright-mcp-test/node_modules/playwright/lib/reporters/github.js +128 -0
  132. package/playwright-mcp-test/node_modules/playwright/lib/reporters/html.js +623 -0
  133. package/playwright-mcp-test/node_modules/playwright/lib/reporters/internalReporter.js +130 -0
  134. package/playwright-mcp-test/node_modules/playwright/lib/reporters/json.js +254 -0
  135. package/playwright-mcp-test/node_modules/playwright/lib/reporters/junit.js +232 -0
  136. package/playwright-mcp-test/node_modules/playwright/lib/reporters/line.js +113 -0
  137. package/playwright-mcp-test/node_modules/playwright/lib/reporters/list.js +235 -0
  138. package/playwright-mcp-test/node_modules/playwright/lib/reporters/listModeReporter.js +69 -0
  139. package/playwright-mcp-test/node_modules/playwright/lib/reporters/markdown.js +144 -0
  140. package/playwright-mcp-test/node_modules/playwright/lib/reporters/merge.js +541 -0
  141. package/playwright-mcp-test/node_modules/playwright/lib/reporters/multiplexer.js +104 -0
  142. package/playwright-mcp-test/node_modules/playwright/lib/reporters/reporterV2.js +102 -0
  143. package/playwright-mcp-test/node_modules/playwright/lib/reporters/teleEmitter.js +298 -0
  144. package/playwright-mcp-test/node_modules/playwright/lib/reporters/versions/blobV1.js +16 -0
  145. package/playwright-mcp-test/node_modules/playwright/lib/runner/dispatcher.js +491 -0
  146. package/playwright-mcp-test/node_modules/playwright/lib/runner/failureTracker.js +72 -0
  147. package/playwright-mcp-test/node_modules/playwright/lib/runner/lastRun.js +77 -0
  148. package/playwright-mcp-test/node_modules/playwright/lib/runner/loadUtils.js +334 -0
  149. package/playwright-mcp-test/node_modules/playwright/lib/runner/loaderHost.js +89 -0
  150. package/playwright-mcp-test/node_modules/playwright/lib/runner/processHost.js +161 -0
  151. package/playwright-mcp-test/node_modules/playwright/lib/runner/projectUtils.js +241 -0
  152. package/playwright-mcp-test/node_modules/playwright/lib/runner/rebase.js +189 -0
  153. package/playwright-mcp-test/node_modules/playwright/lib/runner/reporters.js +139 -0
  154. package/playwright-mcp-test/node_modules/playwright/lib/runner/sigIntWatcher.js +96 -0
  155. package/playwright-mcp-test/node_modules/playwright/lib/runner/taskRunner.js +127 -0
  156. package/playwright-mcp-test/node_modules/playwright/lib/runner/tasks.js +410 -0
  157. package/playwright-mcp-test/node_modules/playwright/lib/runner/testGroups.js +117 -0
  158. package/playwright-mcp-test/node_modules/playwright/lib/runner/testRunner.js +390 -0
  159. package/playwright-mcp-test/node_modules/playwright/lib/runner/testServer.js +264 -0
  160. package/playwright-mcp-test/node_modules/playwright/lib/runner/uiModeReporter.js +30 -0
  161. package/playwright-mcp-test/node_modules/playwright/lib/runner/vcs.js +72 -0
  162. package/playwright-mcp-test/node_modules/playwright/lib/runner/watchMode.js +395 -0
  163. package/playwright-mcp-test/node_modules/playwright/lib/runner/workerHost.js +95 -0
  164. package/playwright-mcp-test/node_modules/playwright/lib/third_party/pirates.js +62 -0
  165. package/playwright-mcp-test/node_modules/playwright/lib/third_party/tsconfig-loader.js +103 -0
  166. package/playwright-mcp-test/node_modules/playwright/lib/transform/babelBundle.js +43 -0
  167. package/playwright-mcp-test/node_modules/playwright/lib/transform/babelBundleImpl.js +461 -0
  168. package/playwright-mcp-test/node_modules/playwright/lib/transform/compilationCache.js +272 -0
  169. package/playwright-mcp-test/node_modules/playwright/lib/transform/esmLoader.js +104 -0
  170. package/playwright-mcp-test/node_modules/playwright/lib/transform/portTransport.js +67 -0
  171. package/playwright-mcp-test/node_modules/playwright/lib/transform/transform.js +293 -0
  172. package/playwright-mcp-test/node_modules/playwright/lib/util.js +403 -0
  173. package/playwright-mcp-test/node_modules/playwright/lib/utilsBundle.js +43 -0
  174. package/playwright-mcp-test/node_modules/playwright/lib/utilsBundleImpl.js +100 -0
  175. package/playwright-mcp-test/node_modules/playwright/lib/worker/fixtureRunner.js +258 -0
  176. package/playwright-mcp-test/node_modules/playwright/lib/worker/testInfo.js +514 -0
  177. package/playwright-mcp-test/node_modules/playwright/lib/worker/testTracing.js +344 -0
  178. package/playwright-mcp-test/node_modules/playwright/lib/worker/timeoutManager.js +174 -0
  179. package/playwright-mcp-test/node_modules/playwright/lib/worker/util.js +31 -0
  180. package/playwright-mcp-test/node_modules/playwright/lib/worker/workerMain.js +520 -0
  181. package/playwright-mcp-test/node_modules/playwright/package.json +72 -0
  182. package/playwright-mcp-test/node_modules/playwright/test.d.ts +18 -0
  183. package/playwright-mcp-test/node_modules/playwright/test.js +24 -0
  184. package/playwright-mcp-test/node_modules/playwright/test.mjs +33 -0
  185. package/playwright-mcp-test/node_modules/playwright/types/test.d.ts +10185 -0
  186. package/playwright-mcp-test/node_modules/playwright/types/testReporter.d.ts +821 -0
  187. package/playwright-mcp-test/node_modules/playwright-core/LICENSE +202 -0
  188. package/playwright-mcp-test/node_modules/playwright-core/NOTICE +5 -0
  189. package/playwright-mcp-test/node_modules/playwright-core/README.md +3 -0
  190. package/playwright-mcp-test/node_modules/playwright-core/ThirdPartyNotices.txt +1161 -0
  191. package/playwright-mcp-test/node_modules/playwright-core/bin/install_media_pack.ps1 +5 -0
  192. package/playwright-mcp-test/node_modules/playwright-core/bin/install_webkit_wsl.ps1 +35 -0
  193. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh +42 -0
  194. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh +13 -0
  195. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_beta_win.ps1 +24 -0
  196. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh +42 -0
  197. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh +12 -0
  198. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_chrome_stable_win.ps1 +24 -0
  199. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh +48 -0
  200. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh +11 -0
  201. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_beta_win.ps1 +23 -0
  202. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh +48 -0
  203. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh +11 -0
  204. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_dev_win.ps1 +23 -0
  205. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh +48 -0
  206. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh +11 -0
  207. package/playwright-mcp-test/node_modules/playwright-core/bin/reinstall_msedge_stable_win.ps1 +24 -0
  208. package/playwright-mcp-test/node_modules/playwright-core/browsers.json +80 -0
  209. package/playwright-mcp-test/node_modules/playwright-core/cli.js +18 -0
  210. package/playwright-mcp-test/node_modules/playwright-core/index.d.ts +17 -0
  211. package/playwright-mcp-test/node_modules/playwright-core/index.js +32 -0
  212. package/playwright-mcp-test/node_modules/playwright-core/index.mjs +28 -0
  213. package/playwright-mcp-test/node_modules/playwright-core/lib/androidServerImpl.js +65 -0
  214. package/playwright-mcp-test/node_modules/playwright-core/lib/browserServerImpl.js +120 -0
  215. package/playwright-mcp-test/node_modules/playwright-core/lib/cli/driver.js +97 -0
  216. package/playwright-mcp-test/node_modules/playwright-core/lib/cli/program.js +634 -0
  217. package/playwright-mcp-test/node_modules/playwright-core/lib/cli/programWithTestStub.js +74 -0
  218. package/playwright-mcp-test/node_modules/playwright-core/lib/client/accessibility.js +49 -0
  219. package/playwright-mcp-test/node_modules/playwright-core/lib/client/android.js +361 -0
  220. package/playwright-mcp-test/node_modules/playwright-core/lib/client/api.js +137 -0
  221. package/playwright-mcp-test/node_modules/playwright-core/lib/client/artifact.js +79 -0
  222. package/playwright-mcp-test/node_modules/playwright-core/lib/client/browser.js +163 -0
  223. package/playwright-mcp-test/node_modules/playwright-core/lib/client/browserContext.js +529 -0
  224. package/playwright-mcp-test/node_modules/playwright-core/lib/client/browserType.js +184 -0
  225. package/playwright-mcp-test/node_modules/playwright-core/lib/client/cdpSession.js +51 -0
  226. package/playwright-mcp-test/node_modules/playwright-core/lib/client/channelOwner.js +194 -0
  227. package/playwright-mcp-test/node_modules/playwright-core/lib/client/clientHelper.js +64 -0
  228. package/playwright-mcp-test/node_modules/playwright-core/lib/client/clientInstrumentation.js +55 -0
  229. package/playwright-mcp-test/node_modules/playwright-core/lib/client/clientStackTrace.js +69 -0
  230. package/playwright-mcp-test/node_modules/playwright-core/lib/client/clock.js +68 -0
  231. package/playwright-mcp-test/node_modules/playwright-core/lib/client/connection.js +314 -0
  232. package/playwright-mcp-test/node_modules/playwright-core/lib/client/consoleMessage.js +54 -0
  233. package/playwright-mcp-test/node_modules/playwright-core/lib/client/coverage.js +44 -0
  234. package/playwright-mcp-test/node_modules/playwright-core/lib/client/dialog.js +56 -0
  235. package/playwright-mcp-test/node_modules/playwright-core/lib/client/download.js +62 -0
  236. package/playwright-mcp-test/node_modules/playwright-core/lib/client/electron.js +138 -0
  237. package/playwright-mcp-test/node_modules/playwright-core/lib/client/elementHandle.js +281 -0
  238. package/playwright-mcp-test/node_modules/playwright-core/lib/client/errors.js +77 -0
  239. package/playwright-mcp-test/node_modules/playwright-core/lib/client/eventEmitter.js +314 -0
  240. package/playwright-mcp-test/node_modules/playwright-core/lib/client/events.js +99 -0
  241. package/playwright-mcp-test/node_modules/playwright-core/lib/client/fetch.js +369 -0
  242. package/playwright-mcp-test/node_modules/playwright-core/lib/client/fileChooser.js +46 -0
  243. package/playwright-mcp-test/node_modules/playwright-core/lib/client/fileUtils.js +34 -0
  244. package/playwright-mcp-test/node_modules/playwright-core/lib/client/frame.js +408 -0
  245. package/playwright-mcp-test/node_modules/playwright-core/lib/client/harRouter.js +87 -0
  246. package/playwright-mcp-test/node_modules/playwright-core/lib/client/input.js +84 -0
  247. package/playwright-mcp-test/node_modules/playwright-core/lib/client/jsHandle.js +109 -0
  248. package/playwright-mcp-test/node_modules/playwright-core/lib/client/jsonPipe.js +39 -0
  249. package/playwright-mcp-test/node_modules/playwright-core/lib/client/localUtils.js +60 -0
  250. package/playwright-mcp-test/node_modules/playwright-core/lib/client/locator.js +369 -0
  251. package/playwright-mcp-test/node_modules/playwright-core/lib/client/network.js +747 -0
  252. package/playwright-mcp-test/node_modules/playwright-core/lib/client/page.js +721 -0
  253. package/playwright-mcp-test/node_modules/playwright-core/lib/client/platform.js +74 -0
  254. package/playwright-mcp-test/node_modules/playwright-core/lib/client/playwright.js +71 -0
  255. package/playwright-mcp-test/node_modules/playwright-core/lib/client/selectors.js +55 -0
  256. package/playwright-mcp-test/node_modules/playwright-core/lib/client/stream.js +39 -0
  257. package/playwright-mcp-test/node_modules/playwright-core/lib/client/timeoutSettings.js +79 -0
  258. package/playwright-mcp-test/node_modules/playwright-core/lib/client/tracing.js +117 -0
  259. package/playwright-mcp-test/node_modules/playwright-core/lib/client/types.js +28 -0
  260. package/playwright-mcp-test/node_modules/playwright-core/lib/client/video.js +59 -0
  261. package/playwright-mcp-test/node_modules/playwright-core/lib/client/waiter.js +142 -0
  262. package/playwright-mcp-test/node_modules/playwright-core/lib/client/webError.js +39 -0
  263. package/playwright-mcp-test/node_modules/playwright-core/lib/client/webSocket.js +93 -0
  264. package/playwright-mcp-test/node_modules/playwright-core/lib/client/worker.js +63 -0
  265. package/playwright-mcp-test/node_modules/playwright-core/lib/client/writableStream.js +39 -0
  266. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/bindingsControllerSource.js +28 -0
  267. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/clockSource.js +28 -0
  268. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/injectedScriptSource.js +28 -0
  269. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/pollingRecorderSource.js +28 -0
  270. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/storageScriptSource.js +28 -0
  271. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/utilityScriptSource.js +28 -0
  272. package/playwright-mcp-test/node_modules/playwright-core/lib/generated/webSocketMockSource.js +336 -0
  273. package/playwright-mcp-test/node_modules/playwright-core/lib/inProcessFactory.js +60 -0
  274. package/playwright-mcp-test/node_modules/playwright-core/lib/inprocess.js +3 -0
  275. package/playwright-mcp-test/node_modules/playwright-core/lib/outofprocess.js +76 -0
  276. package/playwright-mcp-test/node_modules/playwright-core/lib/protocol/serializers.js +192 -0
  277. package/playwright-mcp-test/node_modules/playwright-core/lib/protocol/validator.js +2912 -0
  278. package/playwright-mcp-test/node_modules/playwright-core/lib/protocol/validatorPrimitives.js +193 -0
  279. package/playwright-mcp-test/node_modules/playwright-core/lib/remote/playwrightConnection.js +129 -0
  280. package/playwright-mcp-test/node_modules/playwright-core/lib/remote/playwrightServer.js +335 -0
  281. package/playwright-mcp-test/node_modules/playwright-core/lib/server/accessibility.js +69 -0
  282. package/playwright-mcp-test/node_modules/playwright-core/lib/server/android/android.js +465 -0
  283. package/playwright-mcp-test/node_modules/playwright-core/lib/server/android/backendAdb.js +177 -0
  284. package/playwright-mcp-test/node_modules/playwright-core/lib/server/artifact.js +127 -0
  285. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiBrowser.js +490 -0
  286. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiChromium.js +153 -0
  287. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiConnection.js +212 -0
  288. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiExecutionContext.js +221 -0
  289. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiFirefox.js +130 -0
  290. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiInput.js +146 -0
  291. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiNetworkManager.js +383 -0
  292. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiOverCdp.js +102 -0
  293. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiPage.js +554 -0
  294. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/bidiPdf.js +106 -0
  295. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
  296. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiDeserializer.js +98 -0
  297. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiKeyboard.js +256 -0
  298. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocol.js +24 -0
  299. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocolCore.js +179 -0
  300. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiProtocolPermissions.js +42 -0
  301. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/bidiSerializer.js +148 -0
  302. package/playwright-mcp-test/node_modules/playwright-core/lib/server/bidi/third_party/firefoxPrefs.js +259 -0
  303. package/playwright-mcp-test/node_modules/playwright-core/lib/server/browser.js +149 -0
  304. package/playwright-mcp-test/node_modules/playwright-core/lib/server/browserContext.js +695 -0
  305. package/playwright-mcp-test/node_modules/playwright-core/lib/server/browserType.js +328 -0
  306. package/playwright-mcp-test/node_modules/playwright-core/lib/server/callLog.js +82 -0
  307. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/appIcon.png +0 -0
  308. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/chromium.js +402 -0
  309. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/chromiumSwitches.js +95 -0
  310. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crAccessibility.js +263 -0
  311. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crBrowser.js +502 -0
  312. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crConnection.js +202 -0
  313. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crCoverage.js +235 -0
  314. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crDevTools.js +113 -0
  315. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crDragDrop.js +131 -0
  316. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crExecutionContext.js +146 -0
  317. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crInput.js +187 -0
  318. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crNetworkManager.js +666 -0
  319. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crPage.js +1069 -0
  320. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crPdf.js +121 -0
  321. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crProtocolHelper.js +145 -0
  322. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/crServiceWorker.js +123 -0
  323. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/defaultFontFamilies.js +162 -0
  324. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/protocol.d.js +16 -0
  325. package/playwright-mcp-test/node_modules/playwright-core/lib/server/chromium/videoRecorder.js +113 -0
  326. package/playwright-mcp-test/node_modules/playwright-core/lib/server/clock.js +149 -0
  327. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/csharp.js +327 -0
  328. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/java.js +274 -0
  329. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/javascript.js +270 -0
  330. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/jsonl.js +52 -0
  331. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/language.js +132 -0
  332. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/languages.js +68 -0
  333. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/python.js +279 -0
  334. package/playwright-mcp-test/node_modules/playwright-core/lib/server/codegen/types.js +16 -0
  335. package/playwright-mcp-test/node_modules/playwright-core/lib/server/console.js +53 -0
  336. package/playwright-mcp-test/node_modules/playwright-core/lib/server/cookieStore.js +206 -0
  337. package/playwright-mcp-test/node_modules/playwright-core/lib/server/debugController.js +191 -0
  338. package/playwright-mcp-test/node_modules/playwright-core/lib/server/debugger.js +119 -0
  339. package/playwright-mcp-test/node_modules/playwright-core/lib/server/deviceDescriptors.js +39 -0
  340. package/playwright-mcp-test/node_modules/playwright-core/lib/server/deviceDescriptorsSource.json +1779 -0
  341. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dialog.js +116 -0
  342. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/androidDispatcher.js +325 -0
  343. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/artifactDispatcher.js +118 -0
  344. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/browserContextDispatcher.js +364 -0
  345. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/browserDispatcher.js +118 -0
  346. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/browserTypeDispatcher.js +64 -0
  347. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/cdpSessionDispatcher.js +44 -0
  348. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/debugControllerDispatcher.js +78 -0
  349. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/dialogDispatcher.js +47 -0
  350. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/dispatcher.js +371 -0
  351. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/electronDispatcher.js +89 -0
  352. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/elementHandlerDispatcher.js +181 -0
  353. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/frameDispatcher.js +227 -0
  354. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/jsHandleDispatcher.js +85 -0
  355. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/jsonPipeDispatcher.js +58 -0
  356. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/localUtilsDispatcher.js +149 -0
  357. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/networkDispatchers.js +213 -0
  358. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/pageDispatcher.js +401 -0
  359. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/playwrightDispatcher.js +108 -0
  360. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/streamDispatcher.js +67 -0
  361. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/tracingDispatcher.js +68 -0
  362. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/webSocketRouteDispatcher.js +165 -0
  363. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dispatchers/writableStreamDispatcher.js +79 -0
  364. package/playwright-mcp-test/node_modules/playwright-core/lib/server/dom.js +806 -0
  365. package/playwright-mcp-test/node_modules/playwright-core/lib/server/download.js +70 -0
  366. package/playwright-mcp-test/node_modules/playwright-core/lib/server/electron/electron.js +270 -0
  367. package/playwright-mcp-test/node_modules/playwright-core/lib/server/electron/loader.js +29 -0
  368. package/playwright-mcp-test/node_modules/playwright-core/lib/server/errors.js +69 -0
  369. package/playwright-mcp-test/node_modules/playwright-core/lib/server/fetch.js +621 -0
  370. package/playwright-mcp-test/node_modules/playwright-core/lib/server/fileChooser.js +43 -0
  371. package/playwright-mcp-test/node_modules/playwright-core/lib/server/fileUploadUtils.js +84 -0
  372. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffAccessibility.js +238 -0
  373. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffBrowser.js +428 -0
  374. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffConnection.js +147 -0
  375. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffExecutionContext.js +150 -0
  376. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffInput.js +159 -0
  377. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffNetworkManager.js +256 -0
  378. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/ffPage.js +503 -0
  379. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/firefox.js +116 -0
  380. package/playwright-mcp-test/node_modules/playwright-core/lib/server/firefox/protocol.d.js +16 -0
  381. package/playwright-mcp-test/node_modules/playwright-core/lib/server/formData.js +147 -0
  382. package/playwright-mcp-test/node_modules/playwright-core/lib/server/frameSelectors.js +154 -0
  383. package/playwright-mcp-test/node_modules/playwright-core/lib/server/frames.js +1455 -0
  384. package/playwright-mcp-test/node_modules/playwright-core/lib/server/har/harRecorder.js +147 -0
  385. package/playwright-mcp-test/node_modules/playwright-core/lib/server/har/harTracer.js +607 -0
  386. package/playwright-mcp-test/node_modules/playwright-core/lib/server/harBackend.js +157 -0
  387. package/playwright-mcp-test/node_modules/playwright-core/lib/server/helper.js +96 -0
  388. package/playwright-mcp-test/node_modules/playwright-core/lib/server/index.js +58 -0
  389. package/playwright-mcp-test/node_modules/playwright-core/lib/server/input.js +273 -0
  390. package/playwright-mcp-test/node_modules/playwright-core/lib/server/instrumentation.js +69 -0
  391. package/playwright-mcp-test/node_modules/playwright-core/lib/server/javascript.js +291 -0
  392. package/playwright-mcp-test/node_modules/playwright-core/lib/server/launchApp.js +128 -0
  393. package/playwright-mcp-test/node_modules/playwright-core/lib/server/localUtils.js +214 -0
  394. package/playwright-mcp-test/node_modules/playwright-core/lib/server/macEditingCommands.js +143 -0
  395. package/playwright-mcp-test/node_modules/playwright-core/lib/server/network.js +629 -0
  396. package/playwright-mcp-test/node_modules/playwright-core/lib/server/page.js +867 -0
  397. package/playwright-mcp-test/node_modules/playwright-core/lib/server/pipeTransport.js +89 -0
  398. package/playwright-mcp-test/node_modules/playwright-core/lib/server/playwright.js +69 -0
  399. package/playwright-mcp-test/node_modules/playwright-core/lib/server/progress.js +112 -0
  400. package/playwright-mcp-test/node_modules/playwright-core/lib/server/protocolError.js +52 -0
  401. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/chat.js +161 -0
  402. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/recorderApp.js +387 -0
  403. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/recorderRunner.js +138 -0
  404. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/recorderSignalProcessor.js +83 -0
  405. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/recorderUtils.js +157 -0
  406. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder/throttledFile.js +57 -0
  407. package/playwright-mcp-test/node_modules/playwright-core/lib/server/recorder.js +499 -0
  408. package/playwright-mcp-test/node_modules/playwright-core/lib/server/registry/browserFetcher.js +175 -0
  409. package/playwright-mcp-test/node_modules/playwright-core/lib/server/registry/dependencies.js +371 -0
  410. package/playwright-mcp-test/node_modules/playwright-core/lib/server/registry/index.js +1361 -0
  411. package/playwright-mcp-test/node_modules/playwright-core/lib/server/registry/nativeDeps.js +1280 -0
  412. package/playwright-mcp-test/node_modules/playwright-core/lib/server/registry/oopDownloadBrowserMain.js +124 -0
  413. package/playwright-mcp-test/node_modules/playwright-core/lib/server/screenshotter.js +333 -0
  414. package/playwright-mcp-test/node_modules/playwright-core/lib/server/selectors.js +112 -0
  415. package/playwright-mcp-test/node_modules/playwright-core/lib/server/socksClientCertificatesInterceptor.js +383 -0
  416. package/playwright-mcp-test/node_modules/playwright-core/lib/server/socksInterceptor.js +95 -0
  417. package/playwright-mcp-test/node_modules/playwright-core/lib/server/trace/recorder/snapshotter.js +147 -0
  418. package/playwright-mcp-test/node_modules/playwright-core/lib/server/trace/recorder/snapshotterInjected.js +541 -0
  419. package/playwright-mcp-test/node_modules/playwright-core/lib/server/trace/recorder/tracing.js +602 -0
  420. package/playwright-mcp-test/node_modules/playwright-core/lib/server/trace/test/inMemorySnapshotter.js +87 -0
  421. package/playwright-mcp-test/node_modules/playwright-core/lib/server/trace/viewer/traceViewer.js +230 -0
  422. package/playwright-mcp-test/node_modules/playwright-core/lib/server/transport.js +181 -0
  423. package/playwright-mcp-test/node_modules/playwright-core/lib/server/types.js +28 -0
  424. package/playwright-mcp-test/node_modules/playwright-core/lib/server/usKeyboardLayout.js +145 -0
  425. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/ascii.js +44 -0
  426. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/comparators.js +139 -0
  427. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/crypto.js +216 -0
  428. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/debug.js +42 -0
  429. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/debugLogger.js +122 -0
  430. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/env.js +73 -0
  431. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/eventsHelper.js +39 -0
  432. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/expectUtils.js +38 -0
  433. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/fileUtils.js +191 -0
  434. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/happyEyeballs.js +207 -0
  435. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/hostPlatform.js +123 -0
  436. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/httpServer.js +218 -0
  437. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/imageUtils.js +146 -0
  438. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/image_tools/colorUtils.js +89 -0
  439. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/image_tools/compare.js +109 -0
  440. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/image_tools/imageChannel.js +78 -0
  441. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/image_tools/stats.js +102 -0
  442. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/linuxUtils.js +71 -0
  443. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/network.js +233 -0
  444. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/nodePlatform.js +148 -0
  445. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/pipeTransport.js +84 -0
  446. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/processLauncher.js +241 -0
  447. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/profiler.js +65 -0
  448. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/socksProxy.js +511 -0
  449. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/spawnAsync.js +41 -0
  450. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/task.js +51 -0
  451. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/userAgent.js +98 -0
  452. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/wsServer.js +121 -0
  453. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/zipFile.js +74 -0
  454. package/playwright-mcp-test/node_modules/playwright-core/lib/server/utils/zones.js +57 -0
  455. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/protocol.d.js +16 -0
  456. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/webkit.js +119 -0
  457. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkAccessibility.js +237 -0
  458. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkBrowser.js +339 -0
  459. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkConnection.js +149 -0
  460. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkExecutionContext.js +154 -0
  461. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkInput.js +181 -0
  462. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkInterceptableRequest.js +169 -0
  463. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkPage.js +1134 -0
  464. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkProvisionalPage.js +83 -0
  465. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wkWorkers.js +104 -0
  466. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wsl/webkit-wsl-transport-client.js +74 -0
  467. package/playwright-mcp-test/node_modules/playwright-core/lib/server/webkit/wsl/webkit-wsl-transport-server.js +113 -0
  468. package/playwright-mcp-test/node_modules/playwright-core/lib/third_party/pixelmatch.js +255 -0
  469. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/ariaSnapshot.js +392 -0
  470. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/assert.js +31 -0
  471. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/colors.js +72 -0
  472. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/cssParser.js +245 -0
  473. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/cssTokenizer.js +1051 -0
  474. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/headers.js +53 -0
  475. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/locatorGenerators.js +689 -0
  476. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/locatorParser.js +176 -0
  477. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/locatorUtils.js +81 -0
  478. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/manualPromise.js +114 -0
  479. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/mimeType.js +459 -0
  480. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/multimap.js +80 -0
  481. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/protocolFormatter.js +81 -0
  482. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/protocolMetainfo.js +321 -0
  483. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/rtti.js +43 -0
  484. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/selectorParser.js +386 -0
  485. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/semaphore.js +54 -0
  486. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/stackTrace.js +158 -0
  487. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/stringUtils.js +155 -0
  488. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/time.js +49 -0
  489. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/timeoutRunner.js +66 -0
  490. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/traceUtils.js +58 -0
  491. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/types.js +16 -0
  492. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/urlMatch.js +179 -0
  493. package/playwright-mcp-test/node_modules/playwright-core/lib/utils/isomorphic/utilityScriptSerializers.js +251 -0
  494. package/playwright-mcp-test/node_modules/playwright-core/lib/utils.js +109 -0
  495. package/playwright-mcp-test/node_modules/playwright-core/lib/utilsBundle.js +112 -0
  496. package/playwright-mcp-test/node_modules/playwright-core/lib/utilsBundleImpl/index.js +218 -0
  497. package/playwright-mcp-test/node_modules/playwright-core/lib/utilsBundleImpl/xdg-open +1066 -0
  498. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/htmlReport/index.html +84 -0
  499. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-C3UTv-Ge.css +1 -0
  500. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/assets/codeMirrorModule-DX585GyR.js +25 -0
  501. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf +0 -0
  502. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/assets/index-DjadjNw5.js +193 -0
  503. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/assets/index-Ri0uHF7I.css +1 -0
  504. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/index.html +29 -0
  505. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/recorder/playwright-logo.svg +9 -0
  506. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/assets/codeMirrorModule-Cw-6jrKz.js +25 -0
  507. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/assets/defaultSettingsView-BZIhX7gh.js +266 -0
  508. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js +9 -0
  509. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/codeMirrorModule.C3UTv-Ge.css +1 -0
  510. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/codicon.DCmgc-ay.ttf +0 -0
  511. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/defaultSettingsView.BEjzWGz-.css +1 -0
  512. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/index.Dk_obRs3.js +2 -0
  513. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/index.I8N9v4jT.css +1 -0
  514. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/index.html +43 -0
  515. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/manifest.webmanifest +16 -0
  516. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/playwright-logo.svg +9 -0
  517. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/snapshot.html +21 -0
  518. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/sw.bundle.js +3 -0
  519. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/uiMode.Bai-qGIw.js +5 -0
  520. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/uiMode.Btcz36p_.css +1 -0
  521. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/uiMode.html +17 -0
  522. package/playwright-mcp-test/node_modules/playwright-core/lib/vite/traceViewer/xtermModule.DYP7pi_n.css +32 -0
  523. package/playwright-mcp-test/node_modules/playwright-core/lib/zipBundle.js +34 -0
  524. package/playwright-mcp-test/node_modules/playwright-core/lib/zipBundleImpl.js +5 -0
  525. package/playwright-mcp-test/node_modules/playwright-core/package.json +42 -0
  526. package/playwright-mcp-test/node_modules/playwright-core/types/protocol.d.ts +23130 -0
  527. package/playwright-mcp-test/node_modules/playwright-core/types/structs.d.ts +45 -0
  528. package/playwright-mcp-test/node_modules/playwright-core/types/types.d.ts +22872 -0
  529. package/playwright-mcp-test/package-lock.json +76 -0
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Copyright (c) Microsoft Corporation.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ const { program } = require('./lib/program');
19
+ program.parse(process.argv);
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ export * from 'playwright-core';
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ module.exports = require('playwright-core');
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ export * from 'playwright-core';
17
+ import playwright from 'playwright-core';
18
+ export default playwright;
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ function jsx(type, props, key) {
18
+ return {
19
+ __pw_type: 'jsx',
20
+ type,
21
+ props,
22
+ key,
23
+ };
24
+ }
25
+
26
+ function jsxs(type, props, key) {
27
+ return {
28
+ __pw_type: 'jsx',
29
+ type,
30
+ props,
31
+ key,
32
+ };
33
+ }
34
+
35
+ // this is used in <></> notation
36
+ const Fragment = { __pw_jsx_fragment: true };
37
+
38
+ module.exports = {
39
+ Fragment,
40
+ jsx,
41
+ jsxs,
42
+ };
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) Microsoft Corporation.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import jsxRuntime from './jsx-runtime.js';
18
+
19
+ export const jsx = jsxRuntime.jsx;
20
+ export const jsxs = jsxRuntime.jsxs;
21
+ export const Fragment = jsxRuntime.Fragment;
@@ -0,0 +1,368 @@
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 generateAgents_exports = {};
30
+ __export(generateAgents_exports, {
31
+ AgentGenerator: () => AgentGenerator,
32
+ ClaudeGenerator: () => ClaudeGenerator,
33
+ OpencodeGenerator: () => OpencodeGenerator,
34
+ VSCodeGenerator: () => VSCodeGenerator
35
+ });
36
+ module.exports = __toCommonJS(generateAgents_exports);
37
+ var import_fs = __toESM(require("fs"));
38
+ var import_path = __toESM(require("path"));
39
+ var import_utilsBundle = require("playwright-core/lib/utilsBundle");
40
+ var import_utils = require("playwright-core/lib/utils");
41
+ var import_seed = require("../mcp/test/seed");
42
+ class AgentParser {
43
+ static async loadAgents() {
44
+ const files = await import_fs.default.promises.readdir(__dirname);
45
+ return Promise.all(files.filter((file) => file.endsWith(".agent.md")).map((file) => AgentParser.parseFile(import_path.default.join(__dirname, file))));
46
+ }
47
+ static async parseFile(filePath) {
48
+ const source = await import_fs.default.promises.readFile(filePath, "utf-8");
49
+ const { header, content } = this.extractYamlAndContent(source);
50
+ const { instructions, examples } = this.extractInstructionsAndExamples(content);
51
+ return { source, header, instructions, examples };
52
+ }
53
+ static extractYamlAndContent(markdown) {
54
+ const lines = markdown.split("\n");
55
+ if (lines[0] !== "---")
56
+ throw new Error("Markdown file must start with YAML front matter (---)");
57
+ let yamlEndIndex = -1;
58
+ for (let i = 1; i < lines.length; i++) {
59
+ if (lines[i] === "---") {
60
+ yamlEndIndex = i;
61
+ break;
62
+ }
63
+ }
64
+ if (yamlEndIndex === -1)
65
+ throw new Error("YAML front matter must be closed with ---");
66
+ const yamlLines = lines.slice(1, yamlEndIndex);
67
+ const yamlRaw = yamlLines.join("\n");
68
+ const contentLines = lines.slice(yamlEndIndex + 1);
69
+ const content = contentLines.join("\n");
70
+ let header;
71
+ try {
72
+ header = import_utilsBundle.yaml.parse(yamlRaw);
73
+ } catch (error) {
74
+ throw new Error(`Failed to parse YAML header: ${error.message}`);
75
+ }
76
+ if (!header.name)
77
+ throw new Error('YAML header must contain a "name" field');
78
+ if (!header.description)
79
+ throw new Error('YAML header must contain a "description" field');
80
+ return { header, content };
81
+ }
82
+ static extractInstructionsAndExamples(content) {
83
+ const examples = [];
84
+ const instructions = content.split("<example>")[0].trim();
85
+ const exampleRegex = /<example>([\s\S]*?)<\/example>/g;
86
+ let match;
87
+ while ((match = exampleRegex.exec(content)) !== null) {
88
+ const example = match[1].trim();
89
+ examples.push(example.replace(/[\n]/g, " ").replace(/ +/g, " "));
90
+ }
91
+ return { instructions, examples };
92
+ }
93
+ }
94
+ class ClaudeGenerator {
95
+ static async init(config, projectName) {
96
+ await initRepo(config, projectName, {
97
+ promptsFolder: ".claude/prompts"
98
+ });
99
+ const agents = await AgentParser.loadAgents();
100
+ await import_fs.default.promises.mkdir(".claude/agents", { recursive: true });
101
+ for (const agent of agents)
102
+ await writeFile(`.claude/agents/${agent.header.name}.agent.md`, ClaudeGenerator.agentSpec(agent), "\u{1F916}", "agent definition");
103
+ await writeFile(".mcp.json", JSON.stringify({
104
+ mcpServers: {
105
+ "playwright-test": {
106
+ command: "npx",
107
+ args: ["playwright", "run-test-mcp-server"]
108
+ }
109
+ }
110
+ }, null, 2), "\u{1F527}", "mcp configuration");
111
+ initRepoDone();
112
+ }
113
+ static agentSpec(agent) {
114
+ const claudeToolMap = /* @__PURE__ */ new Map([
115
+ ["search", ["Glob", "Grep"]],
116
+ ["read", ["Read"]],
117
+ ["edit", ["Edit", "MultiEdit"]],
118
+ ["write", ["Write"]]
119
+ ]);
120
+ function asClaudeTool(tool) {
121
+ const [first, second] = tool.split("/");
122
+ if (!second)
123
+ return (claudeToolMap.get(first) || [first]).join(", ");
124
+ return `mcp__${first}__${second}`;
125
+ }
126
+ const lines = [];
127
+ lines.push(`---`);
128
+ lines.push(`name: ${agent.header.name}`);
129
+ lines.push(`description: ${agent.header.description}. Examples: ${agent.examples.map((example) => `<example>${example}</example>`).join("")}`);
130
+ lines.push(`tools: ${agent.header.tools.map((tool) => asClaudeTool(tool)).join(", ")}`);
131
+ lines.push(`model: ${agent.header.model}`);
132
+ lines.push(`color: ${agent.header.color}`);
133
+ lines.push(`---`);
134
+ lines.push("");
135
+ lines.push(agent.instructions);
136
+ return lines.join("\n");
137
+ }
138
+ }
139
+ class OpencodeGenerator {
140
+ static async init(config, projectName) {
141
+ await initRepo(config, projectName, {
142
+ agentDefault: "Build",
143
+ promptsFolder: ".opencode/prompts"
144
+ });
145
+ const agents = await AgentParser.loadAgents();
146
+ for (const agent of agents) {
147
+ const prompt = [agent.instructions];
148
+ prompt.push("");
149
+ prompt.push(...agent.examples.map((example) => `<example>${example}</example>`));
150
+ await writeFile(`.opencode/prompts/${agent.header.name}.agent.md`, prompt.join("\n"), "\u{1F916}", "agent definition");
151
+ }
152
+ await writeFile("opencode.json", OpencodeGenerator.configuration(agents), "\u{1F527}", "opencode configuration");
153
+ initRepoDone();
154
+ }
155
+ static configuration(agents) {
156
+ const opencodeToolMap = /* @__PURE__ */ new Map([
157
+ ["search", ["ls", "glob", "grep"]],
158
+ ["read", ["read"]],
159
+ ["edit", ["edit"]],
160
+ ["write", ["write"]]
161
+ ]);
162
+ const asOpencodeTool = (tools, tool) => {
163
+ const [first, second] = tool.split("/");
164
+ if (!second) {
165
+ for (const tool2 of opencodeToolMap.get(first) || [first])
166
+ tools[tool2] = true;
167
+ } else {
168
+ tools[`${first}*${second}`] = true;
169
+ }
170
+ };
171
+ const result = {};
172
+ result["$schema"] = "https://opencode.ai/config.json";
173
+ result["mcp"] = {};
174
+ result["tools"] = {
175
+ "playwright*": false
176
+ };
177
+ result["agent"] = {};
178
+ for (const agent of agents) {
179
+ const tools = {};
180
+ result["agent"][agent.header.name] = {
181
+ description: agent.header.description,
182
+ mode: "subagent",
183
+ prompt: `{file:.opencode/prompts/${agent.header.name}.agent.md}`,
184
+ tools
185
+ };
186
+ for (const tool of agent.header.tools)
187
+ asOpencodeTool(tools, tool);
188
+ }
189
+ result["mcp"]["playwright-test"] = {
190
+ type: "local",
191
+ command: ["npx", "playwright", "run-test-mcp-server"],
192
+ enabled: true
193
+ };
194
+ return JSON.stringify(result, null, 2);
195
+ }
196
+ }
197
+ class AgentGenerator {
198
+ static async init(config, projectName) {
199
+ const agentsFolder = process.env.AGENTS_FOLDER;
200
+ if (!agentsFolder) {
201
+ console.error("AGENTS_FOLDER environment variable is not set");
202
+ return;
203
+ }
204
+ await initRepo(config, projectName, {
205
+ promptsFolder: import_path.default.join(agentsFolder, "prompts")
206
+ });
207
+ const agents = await AgentParser.loadAgents();
208
+ await import_fs.default.promises.mkdir(agentsFolder, { recursive: true });
209
+ for (const agent of agents)
210
+ await writeFile(`${agentsFolder}/agents/${agent.header.name}.md`, agent.source, "\u{1F916}", "agent definition");
211
+ console.log("\u{1F527} MCP configuration");
212
+ console.log(JSON.stringify({
213
+ mcpServers: {
214
+ "playwright-test": {
215
+ type: "stdio",
216
+ command: "npx",
217
+ args: [
218
+ `--prefix=${import_path.default.resolve(process.cwd())}`,
219
+ "playwright",
220
+ "run-test-mcp-server",
221
+ `--headless`,
222
+ `--config=${import_path.default.resolve(process.cwd())}`
223
+ ],
224
+ tools: ["*"]
225
+ }
226
+ }
227
+ }, null, 2));
228
+ initRepoDone();
229
+ }
230
+ }
231
+ class VSCodeGenerator {
232
+ static async init(config, projectName) {
233
+ await initRepo(config, projectName, {
234
+ agentDefault: "agent",
235
+ agentHealer: "\u{1F3AD} healer",
236
+ agentGenerator: "\u{1F3AD} generator",
237
+ agentPlanner: "\u{1F3AD} planner",
238
+ promptsFolder: ".github/prompts"
239
+ });
240
+ const agents = await AgentParser.loadAgents();
241
+ const nameMap = /* @__PURE__ */ new Map([
242
+ ["playwright-test-planner", "\u{1F3AD} planner"],
243
+ ["playwright-test-generator", "\u{1F3AD} generator"],
244
+ ["playwright-test-healer", "\u{1F3AD} healer"]
245
+ ]);
246
+ await deleteFile(`.github/chatmodes/ \u{1F3AD} planner.chatmode.md`, "old planner chatmode");
247
+ await import_fs.default.promises.mkdir(".github/chatmodes", { recursive: true });
248
+ for (const agent of agents)
249
+ await writeFile(`.github/chatmodes/${nameMap.get(agent.header.name)}.chatmode.md`, VSCodeGenerator.agentSpec(agent), "\u{1F916}", "chatmode definition");
250
+ await import_fs.default.promises.mkdir(".vscode", { recursive: true });
251
+ const mcpJsonPath = ".vscode/mcp.json";
252
+ let mcpJson = {
253
+ servers: {},
254
+ inputs: []
255
+ };
256
+ try {
257
+ mcpJson = JSON.parse(import_fs.default.readFileSync(mcpJsonPath, "utf8"));
258
+ } catch {
259
+ }
260
+ if (!mcpJson.servers)
261
+ mcpJson.servers = {};
262
+ mcpJson.servers["playwright-test"] = {
263
+ type: "stdio",
264
+ command: "npx",
265
+ args: ["playwright", "run-test-mcp-server"]
266
+ };
267
+ await writeFile(mcpJsonPath, JSON.stringify(mcpJson, null, 2), "\u{1F527}", "mcp configuration");
268
+ initRepoDone();
269
+ }
270
+ static agentSpec(agent) {
271
+ const vscodeToolMap = /* @__PURE__ */ new Map([
272
+ ["search", ["search/listDirectory", "search/fileSearch", "search/textSearch"]],
273
+ ["read", ["search/readFile"]],
274
+ ["edit", ["edit/editFiles"]],
275
+ ["write", ["edit/createFile", "edit/createDirectory"]]
276
+ ]);
277
+ const vscodeToolsOrder = ["edit/createFile", "edit/createDirectory", "edit/editFiles", "search/fileSearch", "search/textSearch", "search/listDirectory", "search/readFile"];
278
+ const vscodeMcpName = "playwright-test";
279
+ function asVscodeTool(tool) {
280
+ const [first, second] = tool.split("/");
281
+ if (second)
282
+ return `${vscodeMcpName}/${second}`;
283
+ return vscodeToolMap.get(first) || first;
284
+ }
285
+ const tools = agent.header.tools.map(asVscodeTool).flat().sort((a, b) => {
286
+ const indexA = vscodeToolsOrder.indexOf(a);
287
+ const indexB = vscodeToolsOrder.indexOf(b);
288
+ if (indexA === -1 && indexB === -1)
289
+ return a.localeCompare(b);
290
+ if (indexA === -1)
291
+ return 1;
292
+ if (indexB === -1)
293
+ return -1;
294
+ return indexA - indexB;
295
+ }).map((tool) => `'${tool}'`).join(", ");
296
+ const lines = [];
297
+ lines.push(`---`);
298
+ lines.push(`description: ${agent.header.description}.`);
299
+ lines.push(`tools: [${tools}]`);
300
+ lines.push(`---`);
301
+ lines.push("");
302
+ lines.push(agent.instructions);
303
+ for (const example of agent.examples)
304
+ lines.push(`<example>${example}</example>`);
305
+ return lines.join("\n");
306
+ }
307
+ }
308
+ async function writeFile(filePath, content, icon, description) {
309
+ console.log(`- ${icon} ${import_path.default.relative(process.cwd(), filePath)} ${import_utilsBundle.colors.dim("- " + description)}`);
310
+ await (0, import_utils.mkdirIfNeeded)(filePath);
311
+ await import_fs.default.promises.writeFile(filePath, content, "utf-8");
312
+ }
313
+ async function deleteFile(filePath, description) {
314
+ try {
315
+ if (!import_fs.default.existsSync(filePath))
316
+ return;
317
+ } catch {
318
+ return;
319
+ }
320
+ console.log(`- \u2702\uFE0F ${import_path.default.relative(process.cwd(), filePath)} ${import_utilsBundle.colors.dim("- " + description)}`);
321
+ await import_fs.default.promises.unlink(filePath);
322
+ }
323
+ async function initRepo(config, projectName, options) {
324
+ const project = (0, import_seed.seedProject)(config, projectName);
325
+ console.log(`\u{1F3AD} Using project "${project.project.name}" as a primary project`);
326
+ if (!import_fs.default.existsSync("specs")) {
327
+ await import_fs.default.promises.mkdir("specs");
328
+ await writeFile(import_path.default.join("specs", "README.md"), `# Specs
329
+
330
+ This is a directory for test plans.
331
+ `, "\u{1F4DD}", "directory for test plans");
332
+ }
333
+ let seedFile = await (0, import_seed.findSeedFile)(project);
334
+ if (!seedFile) {
335
+ seedFile = (0, import_seed.defaultSeedFile)(project);
336
+ await writeFile(seedFile, import_seed.seedFileContent, "\u{1F331}", "default environment seed file");
337
+ }
338
+ await import_fs.default.promises.mkdir(options.promptsFolder, { recursive: true });
339
+ for (const promptFile of await import_fs.default.promises.readdir(__dirname)) {
340
+ if (!promptFile.endsWith(".prompt.md"))
341
+ continue;
342
+ const content = await loadPrompt(promptFile, { ...options, seedFile: import_path.default.relative(process.cwd(), seedFile) });
343
+ await writeFile(import_path.default.join(options.promptsFolder, promptFile), content, "\u{1F4DD}", "prompt template");
344
+ }
345
+ }
346
+ function initRepoDone() {
347
+ console.log("\u2705 Done.");
348
+ }
349
+ async function loadPrompt(file, params) {
350
+ const templateParams = {
351
+ agentDefault: params.agentDefault ?? "default",
352
+ agentHealer: params.agentHealer ?? "playwright-test-healer",
353
+ agentGenerator: params.agentGenerator ?? "playwright-test-generator",
354
+ agentPlanner: params.agentPlanner ?? "playwright-test-planner",
355
+ seedFile: params.seedFile
356
+ };
357
+ const content = await import_fs.default.promises.readFile(import_path.default.join(__dirname, file), "utf-8");
358
+ return Object.entries(templateParams).reduce((acc, [key, value]) => {
359
+ return acc.replace(new RegExp(`\\\${${key}}`, "g"), value);
360
+ }, content);
361
+ }
362
+ // Annotate the CommonJS export names for ESM import in node:
363
+ 0 && (module.exports = {
364
+ AgentGenerator,
365
+ ClaudeGenerator,
366
+ OpencodeGenerator,
367
+ VSCodeGenerator
368
+ });
@@ -0,0 +1,101 @@
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
+ - read
8
+ - search
9
+ - playwright-test/browser_click
10
+ - playwright-test/browser_drag
11
+ - playwright-test/browser_evaluate
12
+ - playwright-test/browser_file_upload
13
+ - playwright-test/browser_handle_dialog
14
+ - playwright-test/browser_hover
15
+ - playwright-test/browser_navigate
16
+ - playwright-test/browser_press_key
17
+ - playwright-test/browser_select_option
18
+ - playwright-test/browser_snapshot
19
+ - playwright-test/browser_type
20
+ - playwright-test/browser_verify_element_visible
21
+ - playwright-test/browser_verify_list_visible
22
+ - playwright-test/browser_verify_text_visible
23
+ - playwright-test/browser_verify_value
24
+ - playwright-test/browser_wait_for
25
+ - playwright-test/generator_read_log
26
+ - playwright-test/generator_setup_page
27
+ - playwright-test/generator_write_test
28
+ ---
29
+
30
+ You are a Playwright Test Generator, an expert in browser automation and end-to-end testing.
31
+ Your specialty is creating robust, reliable Playwright tests that accurately simulate user interactions and validate
32
+ application behavior.
33
+
34
+ # For each test you generate
35
+ - Obtain the test plan with all the steps and verification specification
36
+ - Run the `generator_setup_page` tool to set up page for the scenario
37
+ - For each step and verification in the scenario, do the following:
38
+ - Use Playwright tool to manually execute it in real-time.
39
+ - Use the step description as the intent for each Playwright tool call.
40
+ - Retrieve generator log via `generator_read_log`
41
+ - Immediately after reading the test log, invoke `generator_write_test` with the generated source code
42
+ - File should contain single test
43
+ - File name must be fs-friendly scenario name
44
+ - Test must be placed in a describe matching the top-level test plan item
45
+ - Test title must match the scenario name
46
+ - Includes a comment with the step text before each step execution. Do not duplicate comments if step requires
47
+ multiple actions.
48
+ - Always use best practices from the log when generating tests.
49
+
50
+ <example-generation>
51
+ For following plan:
52
+
53
+ ```markdown file=specs/plan.md
54
+ ### 1. Adding New Todos
55
+ **Seed:** `tests/seed.spec.ts`
56
+
57
+ #### 1.1 Add Valid Todo
58
+ **Steps:**
59
+ 1. Click in the "What needs to be done?" input field
60
+
61
+ #### 1.2 Add Multiple Todos
62
+ ...
63
+ ```
64
+
65
+ Following file is generated:
66
+
67
+ ```ts file=add-valid-todo.spec.ts
68
+ // spec: specs/plan.md
69
+ // seed: tests/seed.spec.ts
70
+
71
+ test.describe('Adding New Todos', () => {
72
+ test('Add Valid Todo', async { page } => {
73
+ // 1. Click in the "What needs to be done?" input field
74
+ await page.click(...);
75
+
76
+ ...
77
+ });
78
+ });
79
+ ```
80
+ </example-generation>
81
+
82
+ <example>
83
+ Context: User wants to test a login flow on their web application.
84
+ user: 'I need a test that logs into my app at localhost:3000 with username admin@test.com and password 123456, then
85
+ verifies the dashboard page loads'
86
+ assistant: 'I'll use the generator agent to create and validate this login test for you'
87
+ <commentary>
88
+ The user needs a specific browser automation test created, which is exactly what the generator agent
89
+ is designed for.
90
+ </commentary>
91
+ </example>
92
+ <example>
93
+ Context: User has built a new checkout flow and wants to ensure it works correctly.
94
+ user: 'Can you create a test that adds items to cart, proceeds to checkout, fills in payment details, and confirms the
95
+ order?'
96
+ assistant: 'I'll use the generator agent to build a comprehensive checkout flow test'
97
+ <commentary>
98
+ This is a complex user journey that needs to be automated and tested, perfect for the generator
99
+ agent.
100
+ </commentary>
101
+ </example>