pure-patchright 1.52.5__py3-none-any.whl

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 (381) hide show
  1. patchright/__init__.py +5 -0
  2. patchright/__main__.py +18 -0
  3. patchright/_impl/__init__.py +0 -0
  4. patchright/_impl/__pyinstaller/__init__.py +20 -0
  5. patchright/_impl/__pyinstaller/hook-playwright.async_api.py +3 -0
  6. patchright/_impl/__pyinstaller/hook-playwright.sync_api.py +3 -0
  7. patchright/_impl/_accessibility.py +50 -0
  8. patchright/_impl/_api_structures.py +277 -0
  9. patchright/_impl/_artifact.py +45 -0
  10. patchright/_impl/_assertions.py +867 -0
  11. patchright/_impl/_async_base.py +92 -0
  12. patchright/_impl/_browser.py +248 -0
  13. patchright/_impl/_browser_context.py +743 -0
  14. patchright/_impl/_browser_type.py +276 -0
  15. patchright/_impl/_cdp_session.py +21 -0
  16. patchright/_impl/_clock.py +57 -0
  17. patchright/_impl/_connection.py +562 -0
  18. patchright/_impl/_console_message.py +45 -0
  19. patchright/_impl/_dialog.py +40 -0
  20. patchright/_impl/_download.py +50 -0
  21. patchright/_impl/_driver.py +24 -0
  22. patchright/_impl/_element_handle.py +376 -0
  23. patchright/_impl/_errors.py +44 -0
  24. patchright/_impl/_event_context_manager.py +20 -0
  25. patchright/_impl/_fetch.py +518 -0
  26. patchright/_impl/_file_chooser.py +43 -0
  27. patchright/_impl/_frame.py +779 -0
  28. patchright/_impl/_glob.py +46 -0
  29. patchright/_impl/_greenlets.py +39 -0
  30. patchright/_impl/_har_router.py +99 -0
  31. patchright/_impl/_helper.py +481 -0
  32. patchright/_impl/_impl_to_api_mapping.py +123 -0
  33. patchright/_impl/_input.py +71 -0
  34. patchright/_impl/_js_handle.py +300 -0
  35. patchright/_impl/_json_pipe.py +56 -0
  36. patchright/_impl/_local_utils.py +73 -0
  37. patchright/_impl/_locator.py +814 -0
  38. patchright/_impl/_map.py +19 -0
  39. patchright/_impl/_network.py +958 -0
  40. patchright/_impl/_object_factory.py +91 -0
  41. patchright/_impl/_page.py +1485 -0
  42. patchright/_impl/_path_utils.py +11 -0
  43. patchright/_impl/_playwright.py +51 -0
  44. patchright/_impl/_selectors.py +62 -0
  45. patchright/_impl/_set_input_files_helpers.py +135 -0
  46. patchright/_impl/_str_utils.py +57 -0
  47. patchright/_impl/_stream.py +32 -0
  48. patchright/_impl/_sync_base.py +134 -0
  49. patchright/_impl/_tracing.py +110 -0
  50. patchright/_impl/_transport.py +150 -0
  51. patchright/_impl/_video.py +57 -0
  52. patchright/_impl/_waiter.py +142 -0
  53. patchright/_impl/_web_error.py +27 -0
  54. patchright/_impl/_writable_stream.py +27 -0
  55. patchright/_repo_version.py +1 -0
  56. patchright/async_api/__init__.py +179 -0
  57. patchright/async_api/_context_manager.py +39 -0
  58. patchright/async_api/_generated.py +20416 -0
  59. patchright/driver/README.md +1 -0
  60. patchright/driver/package/README.md +3 -0
  61. patchright/driver/package/ThirdPartyNotices.txt +1560 -0
  62. patchright/driver/package/bin/install_media_pack.ps1 +5 -0
  63. patchright/driver/package/bin/reinstall_chrome_beta_linux.sh +42 -0
  64. patchright/driver/package/bin/reinstall_chrome_beta_mac.sh +13 -0
  65. patchright/driver/package/bin/reinstall_chrome_beta_win.ps1 +24 -0
  66. patchright/driver/package/bin/reinstall_chrome_stable_linux.sh +42 -0
  67. patchright/driver/package/bin/reinstall_chrome_stable_mac.sh +12 -0
  68. patchright/driver/package/bin/reinstall_chrome_stable_win.ps1 +24 -0
  69. patchright/driver/package/bin/reinstall_msedge_beta_linux.sh +48 -0
  70. patchright/driver/package/bin/reinstall_msedge_beta_mac.sh +11 -0
  71. patchright/driver/package/bin/reinstall_msedge_beta_win.ps1 +23 -0
  72. patchright/driver/package/bin/reinstall_msedge_dev_linux.sh +48 -0
  73. patchright/driver/package/bin/reinstall_msedge_dev_mac.sh +11 -0
  74. patchright/driver/package/bin/reinstall_msedge_dev_win.ps1 +23 -0
  75. patchright/driver/package/bin/reinstall_msedge_stable_linux.sh +48 -0
  76. patchright/driver/package/bin/reinstall_msedge_stable_mac.sh +11 -0
  77. patchright/driver/package/bin/reinstall_msedge_stable_win.ps1 +24 -0
  78. patchright/driver/package/browsers.json +80 -0
  79. patchright/driver/package/cli.js +18 -0
  80. patchright/driver/package/index.js +32 -0
  81. patchright/driver/package/index.mjs +28 -0
  82. patchright/driver/package/lib/androidServerImpl.js +63 -0
  83. patchright/driver/package/lib/browserServerImpl.js +88 -0
  84. patchright/driver/package/lib/cli/driver.js +97 -0
  85. patchright/driver/package/lib/cli/program.js +567 -0
  86. patchright/driver/package/lib/cli/programWithTestStub.js +74 -0
  87. patchright/driver/package/lib/client/accessibility.js +49 -0
  88. patchright/driver/package/lib/client/android.js +365 -0
  89. patchright/driver/package/lib/client/api.js +137 -0
  90. patchright/driver/package/lib/client/artifact.js +79 -0
  91. patchright/driver/package/lib/client/browser.js +136 -0
  92. patchright/driver/package/lib/client/browserContext.js +539 -0
  93. patchright/driver/package/lib/client/browserType.js +193 -0
  94. patchright/driver/package/lib/client/cdpSession.js +51 -0
  95. patchright/driver/package/lib/client/channelOwner.js +205 -0
  96. patchright/driver/package/lib/client/clientHelper.js +64 -0
  97. patchright/driver/package/lib/client/clientInstrumentation.js +55 -0
  98. patchright/driver/package/lib/client/clientStackTrace.js +69 -0
  99. patchright/driver/package/lib/client/clock.js +68 -0
  100. patchright/driver/package/lib/client/connection.js +318 -0
  101. patchright/driver/package/lib/client/consoleMessage.js +55 -0
  102. patchright/driver/package/lib/client/coverage.js +44 -0
  103. patchright/driver/package/lib/client/dialog.js +56 -0
  104. patchright/driver/package/lib/client/download.js +62 -0
  105. patchright/driver/package/lib/client/electron.js +133 -0
  106. patchright/driver/package/lib/client/elementHandle.js +284 -0
  107. patchright/driver/package/lib/client/errors.js +77 -0
  108. patchright/driver/package/lib/client/eventEmitter.js +314 -0
  109. patchright/driver/package/lib/client/events.js +98 -0
  110. patchright/driver/package/lib/client/fetch.js +367 -0
  111. patchright/driver/package/lib/client/fileChooser.js +46 -0
  112. patchright/driver/package/lib/client/fileUtils.js +34 -0
  113. patchright/driver/package/lib/client/frame.js +386 -0
  114. patchright/driver/package/lib/client/harRouter.js +87 -0
  115. patchright/driver/package/lib/client/input.js +82 -0
  116. patchright/driver/package/lib/client/jsHandle.js +105 -0
  117. patchright/driver/package/lib/client/jsonPipe.js +39 -0
  118. patchright/driver/package/lib/client/localUtils.js +61 -0
  119. patchright/driver/package/lib/client/locator.js +362 -0
  120. patchright/driver/package/lib/client/network.js +751 -0
  121. patchright/driver/package/lib/client/page.js +709 -0
  122. patchright/driver/package/lib/client/platform.js +74 -0
  123. patchright/driver/package/lib/client/playwright.js +85 -0
  124. patchright/driver/package/lib/client/selectors.js +75 -0
  125. patchright/driver/package/lib/client/stream.js +39 -0
  126. patchright/driver/package/lib/client/timeoutSettings.js +75 -0
  127. patchright/driver/package/lib/client/tracing.js +114 -0
  128. patchright/driver/package/lib/client/types.js +28 -0
  129. patchright/driver/package/lib/client/video.js +59 -0
  130. patchright/driver/package/lib/client/waiter.js +142 -0
  131. patchright/driver/package/lib/client/webError.js +39 -0
  132. patchright/driver/package/lib/client/webSocket.js +111 -0
  133. patchright/driver/package/lib/client/worker.js +63 -0
  134. patchright/driver/package/lib/client/writableStream.js +39 -0
  135. patchright/driver/package/lib/generated/clockSource.js +28 -0
  136. patchright/driver/package/lib/generated/consoleApiSource.js +28 -0
  137. patchright/driver/package/lib/generated/injectedScriptSource.js +28 -0
  138. patchright/driver/package/lib/generated/pollingRecorderSource.js +28 -0
  139. patchright/driver/package/lib/generated/utilityScriptSource.js +28 -0
  140. patchright/driver/package/lib/generated/webSocketMockSource.js +374 -0
  141. patchright/driver/package/lib/inProcessFactory.js +59 -0
  142. patchright/driver/package/lib/inprocess.js +3 -0
  143. patchright/driver/package/lib/outofprocess.js +78 -0
  144. patchright/driver/package/lib/protocol/debug.js +211 -0
  145. patchright/driver/package/lib/protocol/serializers.js +192 -0
  146. patchright/driver/package/lib/protocol/validator.js +2832 -0
  147. patchright/driver/package/lib/protocol/validatorPrimitives.js +179 -0
  148. patchright/driver/package/lib/remote/playwrightConnection.js +266 -0
  149. patchright/driver/package/lib/remote/playwrightServer.js +139 -0
  150. patchright/driver/package/lib/server/accessibility.js +69 -0
  151. patchright/driver/package/lib/server/android/android.js +451 -0
  152. patchright/driver/package/lib/server/android/backendAdb.js +179 -0
  153. patchright/driver/package/lib/server/artifact.js +127 -0
  154. patchright/driver/package/lib/server/bidi/bidiBrowser.js +380 -0
  155. patchright/driver/package/lib/server/bidi/bidiChromium.js +152 -0
  156. patchright/driver/package/lib/server/bidi/bidiConnection.js +187 -0
  157. patchright/driver/package/lib/server/bidi/bidiExecutionContext.js +220 -0
  158. patchright/driver/package/lib/server/bidi/bidiFirefox.js +112 -0
  159. patchright/driver/package/lib/server/bidi/bidiInput.js +146 -0
  160. patchright/driver/package/lib/server/bidi/bidiNetworkManager.js +320 -0
  161. patchright/driver/package/lib/server/bidi/bidiOverCdp.js +102 -0
  162. patchright/driver/package/lib/server/bidi/bidiPage.js +530 -0
  163. patchright/driver/package/lib/server/bidi/bidiPdf.js +106 -0
  164. patchright/driver/package/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
  165. patchright/driver/package/lib/server/bidi/third_party/bidiDeserializer.js +98 -0
  166. patchright/driver/package/lib/server/bidi/third_party/bidiKeyboard.js +256 -0
  167. patchright/driver/package/lib/server/bidi/third_party/bidiProtocol.js +152 -0
  168. patchright/driver/package/lib/server/bidi/third_party/bidiSerializer.js +148 -0
  169. patchright/driver/package/lib/server/bidi/third_party/firefoxPrefs.js +259 -0
  170. patchright/driver/package/lib/server/browser.js +140 -0
  171. patchright/driver/package/lib/server/browserContext.js +646 -0
  172. patchright/driver/package/lib/server/browserType.js +326 -0
  173. patchright/driver/package/lib/server/callLog.js +82 -0
  174. patchright/driver/package/lib/server/chromium/appIcon.png +0 -0
  175. patchright/driver/package/lib/server/chromium/chromium.js +376 -0
  176. patchright/driver/package/lib/server/chromium/chromiumSwitches.js +89 -0
  177. patchright/driver/package/lib/server/chromium/crAccessibility.js +263 -0
  178. patchright/driver/package/lib/server/chromium/crBrowser.js +503 -0
  179. patchright/driver/package/lib/server/chromium/crConnection.js +203 -0
  180. patchright/driver/package/lib/server/chromium/crCoverage.js +232 -0
  181. patchright/driver/package/lib/server/chromium/crDevTools.js +112 -0
  182. patchright/driver/package/lib/server/chromium/crDragDrop.js +126 -0
  183. patchright/driver/package/lib/server/chromium/crExecutionContext.js +145 -0
  184. patchright/driver/package/lib/server/chromium/crInput.js +184 -0
  185. patchright/driver/package/lib/server/chromium/crNetworkManager.js +742 -0
  186. patchright/driver/package/lib/server/chromium/crPage.js +1134 -0
  187. patchright/driver/package/lib/server/chromium/crPdf.js +121 -0
  188. patchright/driver/package/lib/server/chromium/crProtocolHelper.js +145 -0
  189. patchright/driver/package/lib/server/chromium/crServiceWorker.js +126 -0
  190. patchright/driver/package/lib/server/chromium/defaultFontFamilies.js +162 -0
  191. patchright/driver/package/lib/server/chromium/protocol.d.js +16 -0
  192. patchright/driver/package/lib/server/chromium/videoRecorder.js +121 -0
  193. patchright/driver/package/lib/server/clock.js +145 -0
  194. patchright/driver/package/lib/server/codegen/csharp.js +329 -0
  195. patchright/driver/package/lib/server/codegen/java.js +270 -0
  196. patchright/driver/package/lib/server/codegen/javascript.js +268 -0
  197. patchright/driver/package/lib/server/codegen/jsonl.js +51 -0
  198. patchright/driver/package/lib/server/codegen/language.js +111 -0
  199. patchright/driver/package/lib/server/codegen/languages.js +68 -0
  200. patchright/driver/package/lib/server/codegen/python.js +277 -0
  201. patchright/driver/package/lib/server/codegen/types.js +16 -0
  202. patchright/driver/package/lib/server/console.js +53 -0
  203. patchright/driver/package/lib/server/cookieStore.js +204 -0
  204. patchright/driver/package/lib/server/debugController.js +185 -0
  205. patchright/driver/package/lib/server/debugger.js +136 -0
  206. patchright/driver/package/lib/server/deviceDescriptors.js +39 -0
  207. patchright/driver/package/lib/server/deviceDescriptorsSource.json +1669 -0
  208. patchright/driver/package/lib/server/dialog.js +72 -0
  209. patchright/driver/package/lib/server/dispatchers/androidDispatcher.js +293 -0
  210. patchright/driver/package/lib/server/dispatchers/artifactDispatcher.js +118 -0
  211. patchright/driver/package/lib/server/dispatchers/browserContextDispatcher.js +328 -0
  212. patchright/driver/package/lib/server/dispatchers/browserDispatcher.js +151 -0
  213. patchright/driver/package/lib/server/dispatchers/browserTypeDispatcher.js +55 -0
  214. patchright/driver/package/lib/server/dispatchers/cdpSessionDispatcher.js +44 -0
  215. patchright/driver/package/lib/server/dispatchers/debugControllerDispatcher.js +87 -0
  216. patchright/driver/package/lib/server/dispatchers/dialogDispatcher.js +47 -0
  217. patchright/driver/package/lib/server/dispatchers/dispatcher.js +346 -0
  218. patchright/driver/package/lib/server/dispatchers/electronDispatcher.js +90 -0
  219. patchright/driver/package/lib/server/dispatchers/elementHandlerDispatcher.js +191 -0
  220. patchright/driver/package/lib/server/dispatchers/frameDispatcher.js +230 -0
  221. patchright/driver/package/lib/server/dispatchers/jsHandleDispatcher.js +80 -0
  222. patchright/driver/package/lib/server/dispatchers/jsonPipeDispatcher.js +58 -0
  223. patchright/driver/package/lib/server/dispatchers/localUtilsDispatcher.js +155 -0
  224. patchright/driver/package/lib/server/dispatchers/networkDispatchers.js +204 -0
  225. patchright/driver/package/lib/server/dispatchers/pageDispatcher.js +328 -0
  226. patchright/driver/package/lib/server/dispatchers/playwrightDispatcher.js +100 -0
  227. patchright/driver/package/lib/server/dispatchers/selectorsDispatcher.js +40 -0
  228. patchright/driver/package/lib/server/dispatchers/streamDispatcher.js +60 -0
  229. patchright/driver/package/lib/server/dispatchers/tracingDispatcher.js +59 -0
  230. patchright/driver/package/lib/server/dispatchers/webSocketRouteDispatcher.js +154 -0
  231. patchright/driver/package/lib/server/dispatchers/writableStreamDispatcher.js +73 -0
  232. patchright/driver/package/lib/server/dom.js +869 -0
  233. patchright/driver/package/lib/server/download.js +70 -0
  234. patchright/driver/package/lib/server/electron/electron.js +277 -0
  235. patchright/driver/package/lib/server/electron/loader.js +29 -0
  236. patchright/driver/package/lib/server/errors.js +69 -0
  237. patchright/driver/package/lib/server/fetch.js +640 -0
  238. patchright/driver/package/lib/server/fileChooser.js +43 -0
  239. patchright/driver/package/lib/server/fileUploadUtils.js +84 -0
  240. patchright/driver/package/lib/server/firefox/ffAccessibility.js +238 -0
  241. patchright/driver/package/lib/server/firefox/ffBrowser.js +404 -0
  242. patchright/driver/package/lib/server/firefox/ffConnection.js +147 -0
  243. patchright/driver/package/lib/server/firefox/ffExecutionContext.js +149 -0
  244. patchright/driver/package/lib/server/firefox/ffInput.js +159 -0
  245. patchright/driver/package/lib/server/firefox/ffNetworkManager.js +254 -0
  246. patchright/driver/package/lib/server/firefox/ffPage.js +501 -0
  247. patchright/driver/package/lib/server/firefox/firefox.js +106 -0
  248. patchright/driver/package/lib/server/firefox/protocol.d.js +16 -0
  249. patchright/driver/package/lib/server/formData.js +147 -0
  250. patchright/driver/package/lib/server/frameSelectors.js +274 -0
  251. patchright/driver/package/lib/server/frames.js +1834 -0
  252. patchright/driver/package/lib/server/har/harRecorder.js +147 -0
  253. patchright/driver/package/lib/server/har/harTracer.js +606 -0
  254. patchright/driver/package/lib/server/harBackend.js +157 -0
  255. patchright/driver/package/lib/server/helper.js +100 -0
  256. patchright/driver/package/lib/server/index.js +61 -0
  257. patchright/driver/package/lib/server/input.js +280 -0
  258. patchright/driver/package/lib/server/instrumentation.js +75 -0
  259. patchright/driver/package/lib/server/javascript.js +315 -0
  260. patchright/driver/package/lib/server/launchApp.js +110 -0
  261. patchright/driver/package/lib/server/localUtils.js +211 -0
  262. patchright/driver/package/lib/server/macEditingCommands.js +143 -0
  263. patchright/driver/package/lib/server/network.js +583 -0
  264. patchright/driver/package/lib/server/page.js +775 -0
  265. patchright/driver/package/lib/server/pageBinding.js +88 -0
  266. patchright/driver/package/lib/server/pipeTransport.js +89 -0
  267. patchright/driver/package/lib/server/playwright.js +81 -0
  268. patchright/driver/package/lib/server/progress.js +104 -0
  269. patchright/driver/package/lib/server/protocolError.js +52 -0
  270. patchright/driver/package/lib/server/recorder/chat.js +161 -0
  271. patchright/driver/package/lib/server/recorder/contextRecorder.js +286 -0
  272. patchright/driver/package/lib/server/recorder/recorderApp.js +184 -0
  273. patchright/driver/package/lib/server/recorder/recorderCollection.js +116 -0
  274. patchright/driver/package/lib/server/recorder/recorderFrontend.js +16 -0
  275. patchright/driver/package/lib/server/recorder/recorderRunner.js +135 -0
  276. patchright/driver/package/lib/server/recorder/recorderUtils.js +100 -0
  277. patchright/driver/package/lib/server/recorder/throttledFile.js +57 -0
  278. patchright/driver/package/lib/server/recorder.js +360 -0
  279. patchright/driver/package/lib/server/registry/browserFetcher.js +175 -0
  280. patchright/driver/package/lib/server/registry/dependencies.js +371 -0
  281. patchright/driver/package/lib/server/registry/index.js +1271 -0
  282. patchright/driver/package/lib/server/registry/nativeDeps.js +1105 -0
  283. patchright/driver/package/lib/server/registry/oopDownloadBrowserMain.js +120 -0
  284. patchright/driver/package/lib/server/screenshotter.js +332 -0
  285. patchright/driver/package/lib/server/selectors.js +112 -0
  286. patchright/driver/package/lib/server/socksClientCertificatesInterceptor.js +321 -0
  287. patchright/driver/package/lib/server/socksInterceptor.js +95 -0
  288. patchright/driver/package/lib/server/storageScript.js +154 -0
  289. patchright/driver/package/lib/server/timeoutSettings.js +89 -0
  290. patchright/driver/package/lib/server/trace/recorder/snapshotter.js +143 -0
  291. patchright/driver/package/lib/server/trace/recorder/snapshotterInjected.js +539 -0
  292. patchright/driver/package/lib/server/trace/recorder/tracing.js +593 -0
  293. patchright/driver/package/lib/server/trace/test/inMemorySnapshotter.js +87 -0
  294. patchright/driver/package/lib/server/trace/viewer/traceViewer.js +249 -0
  295. patchright/driver/package/lib/server/transport.js +183 -0
  296. patchright/driver/package/lib/server/types.js +28 -0
  297. patchright/driver/package/lib/server/usKeyboardLayout.js +145 -0
  298. patchright/driver/package/lib/server/utils/ascii.js +44 -0
  299. patchright/driver/package/lib/server/utils/comparators.js +161 -0
  300. patchright/driver/package/lib/server/utils/crypto.js +216 -0
  301. patchright/driver/package/lib/server/utils/debug.js +47 -0
  302. patchright/driver/package/lib/server/utils/debugLogger.js +114 -0
  303. patchright/driver/package/lib/server/utils/env.js +68 -0
  304. patchright/driver/package/lib/server/utils/eventsHelper.js +39 -0
  305. patchright/driver/package/lib/server/utils/expectUtils.js +38 -0
  306. patchright/driver/package/lib/server/utils/fileUtils.js +191 -0
  307. patchright/driver/package/lib/server/utils/happyEyeballs.js +207 -0
  308. patchright/driver/package/lib/server/utils/hostPlatform.js +109 -0
  309. patchright/driver/package/lib/server/utils/httpServer.js +218 -0
  310. patchright/driver/package/lib/server/utils/image_tools/colorUtils.js +89 -0
  311. patchright/driver/package/lib/server/utils/image_tools/compare.js +109 -0
  312. patchright/driver/package/lib/server/utils/image_tools/imageChannel.js +78 -0
  313. patchright/driver/package/lib/server/utils/image_tools/stats.js +102 -0
  314. patchright/driver/package/lib/server/utils/linuxUtils.js +71 -0
  315. patchright/driver/package/lib/server/utils/network.js +217 -0
  316. patchright/driver/package/lib/server/utils/nodePlatform.js +148 -0
  317. patchright/driver/package/lib/server/utils/pipeTransport.js +84 -0
  318. patchright/driver/package/lib/server/utils/processLauncher.js +238 -0
  319. patchright/driver/package/lib/server/utils/profiler.js +65 -0
  320. patchright/driver/package/lib/server/utils/socksProxy.js +511 -0
  321. patchright/driver/package/lib/server/utils/spawnAsync.js +41 -0
  322. patchright/driver/package/lib/server/utils/task.js +51 -0
  323. patchright/driver/package/lib/server/utils/userAgent.js +98 -0
  324. patchright/driver/package/lib/server/utils/wsServer.js +132 -0
  325. patchright/driver/package/lib/server/utils/zipFile.js +74 -0
  326. patchright/driver/package/lib/server/utils/zones.js +57 -0
  327. patchright/driver/package/lib/server/webkit/protocol.d.js +16 -0
  328. patchright/driver/package/lib/server/webkit/webkit.js +100 -0
  329. patchright/driver/package/lib/server/webkit/wkAccessibility.js +237 -0
  330. patchright/driver/package/lib/server/webkit/wkBrowser.js +312 -0
  331. patchright/driver/package/lib/server/webkit/wkConnection.js +149 -0
  332. patchright/driver/package/lib/server/webkit/wkExecutionContext.js +153 -0
  333. patchright/driver/package/lib/server/webkit/wkInput.js +181 -0
  334. patchright/driver/package/lib/server/webkit/wkInterceptableRequest.js +169 -0
  335. patchright/driver/package/lib/server/webkit/wkPage.js +1114 -0
  336. patchright/driver/package/lib/server/webkit/wkProvisionalPage.js +83 -0
  337. patchright/driver/package/lib/server/webkit/wkWorkers.js +104 -0
  338. patchright/driver/package/lib/third_party/pixelmatch.js +255 -0
  339. patchright/driver/package/lib/utils/isomorphic/ariaSnapshot.js +384 -0
  340. patchright/driver/package/lib/utils/isomorphic/assert.js +31 -0
  341. patchright/driver/package/lib/utils/isomorphic/builtins.js +86 -0
  342. patchright/driver/package/lib/utils/isomorphic/colors.js +72 -0
  343. patchright/driver/package/lib/utils/isomorphic/cssParser.js +246 -0
  344. patchright/driver/package/lib/utils/isomorphic/cssTokenizer.js +1051 -0
  345. patchright/driver/package/lib/utils/isomorphic/headers.js +53 -0
  346. patchright/driver/package/lib/utils/isomorphic/locatorGenerators.js +655 -0
  347. patchright/driver/package/lib/utils/isomorphic/locatorParser.js +176 -0
  348. patchright/driver/package/lib/utils/isomorphic/locatorUtils.js +81 -0
  349. patchright/driver/package/lib/utils/isomorphic/manualPromise.js +115 -0
  350. patchright/driver/package/lib/utils/isomorphic/mimeType.js +460 -0
  351. patchright/driver/package/lib/utils/isomorphic/multimap.js +81 -0
  352. patchright/driver/package/lib/utils/isomorphic/rtti.js +43 -0
  353. patchright/driver/package/lib/utils/isomorphic/selectorParser.js +387 -0
  354. patchright/driver/package/lib/utils/isomorphic/semaphore.js +54 -0
  355. patchright/driver/package/lib/utils/isomorphic/stackTrace.js +158 -0
  356. patchright/driver/package/lib/utils/isomorphic/stringUtils.js +176 -0
  357. patchright/driver/package/lib/utils/isomorphic/time.js +44 -0
  358. patchright/driver/package/lib/utils/isomorphic/timeoutRunner.js +67 -0
  359. patchright/driver/package/lib/utils/isomorphic/traceUtils.js +59 -0
  360. patchright/driver/package/lib/utils/isomorphic/types.js +16 -0
  361. patchright/driver/package/lib/utils/isomorphic/urlMatch.js +167 -0
  362. patchright/driver/package/lib/utils/isomorphic/utilityScriptSerializers.js +248 -0
  363. patchright/driver/package/lib/utils.js +101 -0
  364. patchright/driver/package/lib/utilsBundle.js +106 -0
  365. patchright/driver/package/lib/utilsBundleImpl/index.js +208 -0
  366. patchright/driver/package/lib/utilsBundleImpl/xdg-open +1066 -0
  367. patchright/driver/package/lib/zipBundle.js +34 -0
  368. patchright/driver/package/lib/zipBundleImpl.js +5 -0
  369. patchright/driver/package/package.json +44 -0
  370. patchright/driver/package/protocol.yml +3313 -0
  371. patchright/py.typed +0 -0
  372. patchright/sync_api/__init__.py +179 -0
  373. patchright/sync_api/_context_manager.py +74 -0
  374. patchright/sync_api/_generated.py +20632 -0
  375. pure_patchright-1.52.5.dist-info/LICENSE +201 -0
  376. pure_patchright-1.52.5.dist-info/METADATA +96 -0
  377. pure_patchright-1.52.5.dist-info/RECORD +381 -0
  378. pure_patchright-1.52.5.dist-info/WHEEL +4 -0
  379. pure_patchright-1.52.5.dist-info/entry_points.txt +5 -0
  380. pure_patchright-1.52.5.dist-info/licenses/LICENSE +202 -0
  381. pure_patchright-1.52.5.dist-info/top_level.txt +1 -0
@@ -0,0 +1,376 @@
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 chromium_exports = {};
30
+ __export(chromium_exports, {
31
+ Chromium: () => Chromium
32
+ });
33
+ module.exports = __toCommonJS(chromium_exports);
34
+ var import_fs = __toESM(require("fs"));
35
+ var import_os = __toESM(require("os"));
36
+ var import_path = __toESM(require("path"));
37
+ var import_chromiumSwitches = require("./chromiumSwitches");
38
+ var import_crBrowser = require("./crBrowser");
39
+ var import_crConnection = require("./crConnection");
40
+ var import_timeoutSettings = require("../timeoutSettings");
41
+ var import_utils = require("../../utils");
42
+ var import_ascii = require("../utils/ascii");
43
+ var import_debugLogger = require("../utils/debugLogger");
44
+ var import_manualPromise = require("../../utils/isomorphic/manualPromise");
45
+ var import_network = require("../utils/network");
46
+ var import_userAgent = require("../utils/userAgent");
47
+ var import_browserContext = require("../browserContext");
48
+ var import_browserType = require("../browserType");
49
+ var import_browserType2 = require("../browserType");
50
+ var import_helper = require("../helper");
51
+ var import_registry = require("../registry");
52
+ var import_transport = require("../transport");
53
+ var import_crDevTools = require("./crDevTools");
54
+ var import_browser = require("../browser");
55
+ var import_fileUtils = require("../utils/fileUtils");
56
+ var import_processLauncher = require("../utils/processLauncher");
57
+ var import_progress = require("../progress");
58
+ const ARTIFACTS_FOLDER = import_path.default.join(import_os.default.tmpdir(), "playwright-artifacts-");
59
+ class Chromium extends import_browserType.BrowserType {
60
+ constructor(parent) {
61
+ super(parent, "chromium");
62
+ if ((0, import_utils.debugMode)())
63
+ this._devtools = this._createDevTools();
64
+ }
65
+ async connectOverCDP(metadata, endpointURL, options) {
66
+ const controller = new import_progress.ProgressController(metadata, this);
67
+ controller.setLogName("browser");
68
+ return controller.run(async (progress) => {
69
+ return await this._connectOverCDPInternal(progress, endpointURL, options);
70
+ }, import_timeoutSettings.TimeoutSettings.timeout(options));
71
+ }
72
+ async _connectOverCDPInternal(progress, endpointURL, options, onClose) {
73
+ let headersMap;
74
+ if (options.headers)
75
+ headersMap = (0, import_utils.headersArrayToObject)(options.headers, false);
76
+ if (!headersMap)
77
+ headersMap = { "User-Agent": (0, import_userAgent.getUserAgent)() };
78
+ else if (headersMap && !Object.keys(headersMap).some((key) => key.toLowerCase() === "user-agent"))
79
+ headersMap["User-Agent"] = (0, import_userAgent.getUserAgent)();
80
+ const artifactsDir = await import_fs.default.promises.mkdtemp(ARTIFACTS_FOLDER);
81
+ const wsEndpoint = await urlToWSEndpoint(progress, endpointURL, headersMap);
82
+ progress.throwIfAborted();
83
+ const chromeTransport = await import_transport.WebSocketTransport.connect(progress, wsEndpoint, { headers: headersMap });
84
+ const cleanedUp = new import_manualPromise.ManualPromise();
85
+ const doCleanup = async () => {
86
+ await (0, import_fileUtils.removeFolders)([artifactsDir]);
87
+ await onClose?.();
88
+ cleanedUp.resolve();
89
+ };
90
+ const doClose = async () => {
91
+ await chromeTransport.closeAndWait();
92
+ await cleanedUp;
93
+ };
94
+ const browserProcess = { close: doClose, kill: doClose };
95
+ const persistent = { noDefaultViewport: true };
96
+ const browserOptions = {
97
+ slowMo: options.slowMo,
98
+ name: "chromium",
99
+ isChromium: true,
100
+ persistent,
101
+ browserProcess,
102
+ protocolLogger: import_helper.helper.debugProtocolLogger(),
103
+ browserLogsCollector: new import_debugLogger.RecentLogsCollector(),
104
+ artifactsDir,
105
+ downloadsPath: options.downloadsPath || artifactsDir,
106
+ tracesDir: options.tracesDir || artifactsDir,
107
+ originalLaunchOptions: {}
108
+ };
109
+ (0, import_browserContext.validateBrowserContextOptions)(persistent, browserOptions);
110
+ progress.throwIfAborted();
111
+ const browser = await import_crBrowser.CRBrowser.connect(this.attribution.playwright, chromeTransport, browserOptions);
112
+ browser._isCollocatedWithServer = false;
113
+ browser.on(import_browser.Browser.Events.Disconnected, doCleanup);
114
+ return browser;
115
+ }
116
+ _createDevTools() {
117
+ const directory = import_registry.registry.findExecutable("chromium").directory;
118
+ return directory ? new import_crDevTools.CRDevTools(import_path.default.join(directory, "devtools-preferences.json")) : void 0;
119
+ }
120
+ async connectToTransport(transport, options) {
121
+ let devtools = this._devtools;
122
+ if (options.__testHookForDevTools) {
123
+ devtools = this._createDevTools();
124
+ await options.__testHookForDevTools(devtools);
125
+ }
126
+ return import_crBrowser.CRBrowser.connect(this.attribution.playwright, transport, options, devtools);
127
+ }
128
+ doRewriteStartupLog(error) {
129
+ if (!error.logs)
130
+ return error;
131
+ if (error.logs.includes("Missing X server"))
132
+ error.logs = "\n" + (0, import_ascii.wrapInASCIIBox)(import_browserType.kNoXServerRunningError, 1);
133
+ if (!error.logs.includes("crbug.com/357670") && !error.logs.includes("No usable sandbox!") && !error.logs.includes("crbug.com/638180"))
134
+ return error;
135
+ error.logs = [
136
+ `Chromium sandboxing failed!`,
137
+ `================================`,
138
+ `To avoid the sandboxing issue, do either of the following:`,
139
+ ` - (preferred): Configure your environment to support sandboxing`,
140
+ ` - (alternative): Launch Chromium without sandbox using 'chromiumSandbox: false' option`,
141
+ `================================`,
142
+ ``
143
+ ].join("\n");
144
+ return error;
145
+ }
146
+ amendEnvironment(env, userDataDir, executable, browserArguments) {
147
+ return env;
148
+ }
149
+ attemptToGracefullyCloseBrowser(transport) {
150
+ const message = { method: "Browser.close", id: import_crConnection.kBrowserCloseMessageId, params: {} };
151
+ transport.send(message);
152
+ }
153
+ async _launchWithSeleniumHub(progress, hubUrl, options) {
154
+ await this._createArtifactDirs(options);
155
+ if (!hubUrl.endsWith("/"))
156
+ hubUrl = hubUrl + "/";
157
+ const args = this._innerDefaultArgs(options);
158
+ args.push("--remote-debugging-port=0");
159
+ const isEdge = options.channel && options.channel.startsWith("msedge");
160
+ let desiredCapabilities = {
161
+ "browserName": isEdge ? "MicrosoftEdge" : "chrome",
162
+ [isEdge ? "ms:edgeOptions" : "goog:chromeOptions"]: { args }
163
+ };
164
+ if (process.env.SELENIUM_REMOTE_CAPABILITIES) {
165
+ const remoteCapabilities = parseSeleniumRemoteParams({ name: "capabilities", value: process.env.SELENIUM_REMOTE_CAPABILITIES }, progress);
166
+ if (remoteCapabilities)
167
+ desiredCapabilities = { ...desiredCapabilities, ...remoteCapabilities };
168
+ }
169
+ let headers = {};
170
+ if (process.env.SELENIUM_REMOTE_HEADERS) {
171
+ const remoteHeaders = parseSeleniumRemoteParams({ name: "headers", value: process.env.SELENIUM_REMOTE_HEADERS }, progress);
172
+ if (remoteHeaders)
173
+ headers = remoteHeaders;
174
+ }
175
+ progress.log(`<selenium> connecting to ${hubUrl}`);
176
+ const response = await (0, import_network.fetchData)({
177
+ url: hubUrl + "session",
178
+ method: "POST",
179
+ headers: {
180
+ "Content-Type": "application/json; charset=utf-8",
181
+ ...headers
182
+ },
183
+ data: JSON.stringify({
184
+ capabilities: { alwaysMatch: desiredCapabilities }
185
+ }),
186
+ timeout: progress.timeUntilDeadline()
187
+ }, seleniumErrorHandler);
188
+ const value = JSON.parse(response).value;
189
+ const sessionId = value.sessionId;
190
+ progress.log(`<selenium> connected to sessionId=${sessionId}`);
191
+ const disconnectFromSelenium = async () => {
192
+ progress.log(`<selenium> disconnecting from sessionId=${sessionId}`);
193
+ await (0, import_network.fetchData)({
194
+ url: hubUrl + "session/" + sessionId,
195
+ method: "DELETE",
196
+ headers
197
+ }).catch((error) => progress.log(`<error disconnecting from selenium>: ${error}`));
198
+ progress.log(`<selenium> disconnected from sessionId=${sessionId}`);
199
+ import_processLauncher.gracefullyCloseSet.delete(disconnectFromSelenium);
200
+ };
201
+ import_processLauncher.gracefullyCloseSet.add(disconnectFromSelenium);
202
+ try {
203
+ const capabilities = value.capabilities;
204
+ let endpointURL;
205
+ if (capabilities["se:cdp"]) {
206
+ progress.log(`<selenium> using selenium v4`);
207
+ const endpointURLString = addProtocol(capabilities["se:cdp"]);
208
+ endpointURL = new URL(endpointURLString);
209
+ if (endpointURL.hostname === "localhost" || endpointURL.hostname === "127.0.0.1")
210
+ endpointURL.hostname = new URL(hubUrl).hostname;
211
+ progress.log(`<selenium> retrieved endpoint ${endpointURL.toString()} for sessionId=${sessionId}`);
212
+ } else {
213
+ progress.log(`<selenium> using selenium v3`);
214
+ const maybeChromeOptions = capabilities["goog:chromeOptions"];
215
+ const chromeOptions = maybeChromeOptions && typeof maybeChromeOptions === "object" ? maybeChromeOptions : void 0;
216
+ const debuggerAddress = chromeOptions && typeof chromeOptions.debuggerAddress === "string" ? chromeOptions.debuggerAddress : void 0;
217
+ const chromeOptionsURL = typeof maybeChromeOptions === "string" ? maybeChromeOptions : void 0;
218
+ const endpointURLString = addProtocol(debuggerAddress || chromeOptionsURL).replace("localhost", "127.0.0.1");
219
+ progress.log(`<selenium> retrieved endpoint ${endpointURLString} for sessionId=${sessionId}`);
220
+ endpointURL = new URL(endpointURLString);
221
+ if (endpointURL.hostname === "localhost" || endpointURL.hostname === "127.0.0.1") {
222
+ const sessionInfoUrl = new URL(hubUrl).origin + "/grid/api/testsession?session=" + sessionId;
223
+ try {
224
+ const sessionResponse = await (0, import_network.fetchData)({
225
+ url: sessionInfoUrl,
226
+ method: "GET",
227
+ timeout: progress.timeUntilDeadline(),
228
+ headers
229
+ }, seleniumErrorHandler);
230
+ const proxyId = JSON.parse(sessionResponse).proxyId;
231
+ endpointURL.hostname = new URL(proxyId).hostname;
232
+ progress.log(`<selenium> resolved endpoint ip ${endpointURL.toString()} for sessionId=${sessionId}`);
233
+ } catch (e) {
234
+ progress.log(`<selenium> unable to resolve endpoint ip for sessionId=${sessionId}, running in standalone?`);
235
+ }
236
+ }
237
+ }
238
+ return await this._connectOverCDPInternal(progress, endpointURL.toString(), {
239
+ ...options,
240
+ headers: (0, import_utils.headersObjectToArray)(headers)
241
+ }, disconnectFromSelenium);
242
+ } catch (e) {
243
+ await disconnectFromSelenium();
244
+ throw e;
245
+ }
246
+ }
247
+ defaultArgs(options, isPersistent, userDataDir) {
248
+ const chromeArguments = this._innerDefaultArgs(options);
249
+ chromeArguments.push(`--user-data-dir=${userDataDir}`);
250
+ if (options.useWebSocket)
251
+ chromeArguments.push("--remote-debugging-port=0");
252
+ else
253
+ chromeArguments.push("--remote-debugging-pipe");
254
+ if (isPersistent)
255
+ chromeArguments.push("about:blank");
256
+ else
257
+ chromeArguments.push("--no-startup-window");
258
+ return chromeArguments;
259
+ }
260
+ _innerDefaultArgs(options) {
261
+ const { args = [] } = options;
262
+ const userDataDirArg = args.find((arg) => arg.startsWith("--user-data-dir"));
263
+ if (userDataDirArg)
264
+ throw this._createUserDataDirArgMisuseError("--user-data-dir");
265
+ if (args.find((arg) => arg.startsWith("--remote-debugging-pipe")))
266
+ throw new Error("Playwright manages remote debugging connection itself.");
267
+ if (args.find((arg) => !arg.startsWith("-")))
268
+ throw new Error("Arguments can not specify page to be opened");
269
+ const chromeArguments = [...import_chromiumSwitches.chromiumSwitches];
270
+ if (import_os.default.platform() === "darwin") {
271
+ chromeArguments.push("--enable-use-zoom-for-dsf=false");
272
+ if (options.headless && (!options.channel || options.channel === "chromium-headless-shell"))
273
+ chromeArguments.push("--use-angle");
274
+ }
275
+ if (options.devtools)
276
+ chromeArguments.push("--auto-open-devtools-for-tabs");
277
+ if (options.headless) {
278
+ chromeArguments.push("--headless");
279
+ chromeArguments.push(
280
+ "--hide-scrollbars",
281
+ "--mute-audio",
282
+ "--blink-settings=primaryHoverType=2,availableHoverTypes=2,primaryPointerType=4,availablePointerTypes=4"
283
+ );
284
+ }
285
+ if (options.chromiumSandbox !== true)
286
+ chromeArguments.push("--no-sandbox");
287
+ const proxy = options.proxyOverride || options.proxy;
288
+ if (proxy) {
289
+ const proxyURL = new URL(proxy.server);
290
+ const isSocks = proxyURL.protocol === "socks5:";
291
+ if (isSocks && !this.attribution.playwright.options.socksProxyPort) {
292
+ chromeArguments.push(`--host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE ${proxyURL.hostname}"`);
293
+ }
294
+ chromeArguments.push(`--proxy-server=${proxy.server}`);
295
+ const proxyBypassRules = [];
296
+ if (this.attribution.playwright.options.socksProxyPort)
297
+ proxyBypassRules.push("<-loopback>");
298
+ if (proxy.bypass)
299
+ proxyBypassRules.push(...proxy.bypass.split(",").map((t) => t.trim()).map((t) => t.startsWith(".") ? "*" + t : t));
300
+ if (!process.env.PLAYWRIGHT_DISABLE_FORCED_CHROMIUM_PROXIED_LOOPBACK && !proxyBypassRules.includes("<-loopback>"))
301
+ proxyBypassRules.push("<-loopback>");
302
+ if (proxyBypassRules.length > 0)
303
+ chromeArguments.push(`--proxy-bypass-list=${proxyBypassRules.join(";")}`);
304
+ }
305
+ chromeArguments.push(...args);
306
+ return chromeArguments;
307
+ }
308
+ readyState(options) {
309
+ if (options.useWebSocket || options.args?.some((a) => a.startsWith("--remote-debugging-port")))
310
+ return new ChromiumReadyState();
311
+ return void 0;
312
+ }
313
+ getExecutableName(options) {
314
+ if (options.channel)
315
+ return options.channel;
316
+ return options.headless ? "chromium-headless-shell" : "chromium";
317
+ }
318
+ }
319
+ class ChromiumReadyState extends import_browserType2.BrowserReadyState {
320
+ onBrowserOutput(message) {
321
+ const match = message.match(/DevTools listening on (.*)/);
322
+ if (match)
323
+ this._wsEndpoint.resolve(match[1]);
324
+ }
325
+ }
326
+ async function urlToWSEndpoint(progress, endpointURL, headers) {
327
+ if (endpointURL.startsWith("ws"))
328
+ return endpointURL;
329
+ progress.log(`<ws preparing> retrieving websocket url from ${endpointURL}`);
330
+ const httpURL = endpointURL.endsWith("/") ? `${endpointURL}json/version/` : `${endpointURL}/json/version/`;
331
+ const json = await (0, import_network.fetchData)(
332
+ {
333
+ url: httpURL,
334
+ headers
335
+ },
336
+ async (_, resp) => new Error(`Unexpected status ${resp.statusCode} when connecting to ${httpURL}.
337
+ This does not look like a DevTools server, try connecting via ws://.`)
338
+ );
339
+ return JSON.parse(json).webSocketDebuggerUrl;
340
+ }
341
+ async function seleniumErrorHandler(params, response) {
342
+ const body = await streamToString(response);
343
+ let message = body;
344
+ try {
345
+ const json = JSON.parse(body);
346
+ message = json.value.localizedMessage || json.value.message;
347
+ } catch (e) {
348
+ }
349
+ return new Error(`Error connecting to Selenium at ${params.url}: ${message}`);
350
+ }
351
+ function addProtocol(url) {
352
+ if (!["ws://", "wss://", "http://", "https://"].some((protocol) => url.startsWith(protocol)))
353
+ return "http://" + url;
354
+ return url;
355
+ }
356
+ function streamToString(stream) {
357
+ return new Promise((resolve, reject) => {
358
+ const chunks = [];
359
+ stream.on("data", (chunk) => chunks.push(Buffer.from(chunk)));
360
+ stream.on("error", reject);
361
+ stream.on("end", () => resolve(Buffer.concat(chunks).toString("utf8")));
362
+ });
363
+ }
364
+ function parseSeleniumRemoteParams(env, progress) {
365
+ try {
366
+ const parsed = JSON.parse(env.value);
367
+ progress.log(`<selenium> using additional ${env.name} "${env.value}"`);
368
+ return parsed;
369
+ } catch (e) {
370
+ progress.log(`<selenium> ignoring additional ${env.name} "${env.value}": ${e}`);
371
+ }
372
+ }
373
+ // Annotate the CommonJS export names for ESM import in node:
374
+ 0 && (module.exports = {
375
+ Chromium
376
+ });
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var chromiumSwitches_exports = {};
20
+ __export(chromiumSwitches_exports, {
21
+ chromiumSwitches: () => chromiumSwitches
22
+ });
23
+ module.exports = __toCommonJS(chromiumSwitches_exports);
24
+ const disabledFeatures = [
25
+ // See https://github.com/microsoft/playwright/pull/10380
26
+ "AcceptCHFrame",
27
+ // See https://github.com/microsoft/playwright/pull/10679
28
+ "AutoExpandDetailsElement",
29
+ // See https://github.com/microsoft/playwright/issues/14047
30
+ "AvoidUnnecessaryBeforeUnloadCheckSync",
31
+ // See https://github.com/microsoft/playwright/pull/12992
32
+ "CertificateTransparencyComponentUpdater",
33
+ // This makes Page.frameScheduledNavigation arrive much later after a click,
34
+ // making our navigation auto-wait after click not working.
35
+ // Can be removed once we deperecate noWaitAfter.
36
+ // See https://github.com/microsoft/playwright/pull/34372.
37
+ "DeferRendererTasksAfterInput",
38
+ "DestroyProfileOnBrowserClose",
39
+ // See https://github.com/microsoft/playwright/pull/13854
40
+ "DialMediaRouteProvider",
41
+ // Chromium is disabling manifest version 2. Allow testing it as long as Chromium can actually run it.
42
+ // Disabled in https://chromium-review.googlesource.com/c/chromium/src/+/6265903.
43
+ "ExtensionManifestV2Disabled",
44
+ "GlobalMediaControls",
45
+ // See https://github.com/microsoft/playwright/pull/27605
46
+ "HttpsUpgrades",
47
+ "ImprovedCookieControls",
48
+ "LazyFrameLoading",
49
+ // Hides the Lens feature in the URL address bar. Its not working in unofficial builds.
50
+ "LensOverlay",
51
+ // See https://github.com/microsoft/playwright/pull/8162
52
+ "MediaRouter",
53
+ // See https://github.com/microsoft/playwright/issues/28023
54
+ "PaintHolding",
55
+ // See https://github.com/microsoft/playwright/issues/32230
56
+ "ThirdPartyStoragePartitioning",
57
+ // See https://github.com/microsoft/playwright/issues/16126
58
+ "Translate"
59
+ ];
60
+ const chromiumSwitches = [
61
+ "--disable-field-trial-config",
62
+ // https://source.chromium.org/chromium/chromium/src/+/main:testing/variations/README.md
63
+ "--disable-background-networking",
64
+ "--disable-background-timer-throttling",
65
+ "--disable-backgrounding-occluded-windows",
66
+ // Avoids surprises like main request not being intercepted during page.goBack().
67
+ "--disable-breakpad",
68
+ // Avoids unneeded network activity after startup.
69
+ "--no-default-browser-check",
70
+ "--disable-dev-shm-usage",
71
+ "--disable-features=" + disabledFeatures.join(","),
72
+ "--disable-hang-monitor",
73
+ "--disable-prompt-on-repost",
74
+ "--disable-renderer-backgrounding",
75
+ "--force-color-profile=srgb",
76
+ "--no-first-run",
77
+ "--password-store=basic",
78
+ "--use-mock-keychain",
79
+ // See https://chromium-review.googlesource.com/c/chromium/src/+/2436773
80
+ "--no-service-autorun",
81
+ "--export-tagged-pdf",
82
+ // https://chromium-review.googlesource.com/c/chromium/src/+/4853540
83
+ "--disable-search-engine-choice-screen",
84
+ "--disable-blink-features=AutomationControlled"
85
+ ];
86
+ // Annotate the CommonJS export names for ESM import in node:
87
+ 0 && (module.exports = {
88
+ chromiumSwitches
89
+ });