@pedropaulovc/playwright-core 1.59.0-alpha-1769214875000

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 (364) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +5 -0
  3. package/README.md +3 -0
  4. package/ThirdPartyNotices.txt +4076 -0
  5. package/bin/install_media_pack.ps1 +5 -0
  6. package/bin/install_webkit_wsl.ps1 +33 -0
  7. package/bin/reinstall_chrome_beta_linux.sh +42 -0
  8. package/bin/reinstall_chrome_beta_mac.sh +13 -0
  9. package/bin/reinstall_chrome_beta_win.ps1 +24 -0
  10. package/bin/reinstall_chrome_stable_linux.sh +42 -0
  11. package/bin/reinstall_chrome_stable_mac.sh +12 -0
  12. package/bin/reinstall_chrome_stable_win.ps1 +24 -0
  13. package/bin/reinstall_msedge_beta_linux.sh +48 -0
  14. package/bin/reinstall_msedge_beta_mac.sh +11 -0
  15. package/bin/reinstall_msedge_beta_win.ps1 +23 -0
  16. package/bin/reinstall_msedge_dev_linux.sh +48 -0
  17. package/bin/reinstall_msedge_dev_mac.sh +11 -0
  18. package/bin/reinstall_msedge_dev_win.ps1 +23 -0
  19. package/bin/reinstall_msedge_stable_linux.sh +48 -0
  20. package/bin/reinstall_msedge_stable_mac.sh +11 -0
  21. package/bin/reinstall_msedge_stable_win.ps1 +24 -0
  22. package/browsers.json +79 -0
  23. package/cli.js +18 -0
  24. package/index.d.ts +17 -0
  25. package/index.js +32 -0
  26. package/index.mjs +28 -0
  27. package/lib/androidServerImpl.js +65 -0
  28. package/lib/browserServerImpl.js +120 -0
  29. package/lib/cli/driver.js +97 -0
  30. package/lib/cli/program.js +601 -0
  31. package/lib/cli/programWithTestStub.js +74 -0
  32. package/lib/client/android.js +361 -0
  33. package/lib/client/api.js +137 -0
  34. package/lib/client/artifact.js +79 -0
  35. package/lib/client/browser.js +161 -0
  36. package/lib/client/browserContext.js +582 -0
  37. package/lib/client/browserType.js +185 -0
  38. package/lib/client/cdpSession.js +51 -0
  39. package/lib/client/channelOwner.js +194 -0
  40. package/lib/client/clientHelper.js +64 -0
  41. package/lib/client/clientInstrumentation.js +55 -0
  42. package/lib/client/clientStackTrace.js +69 -0
  43. package/lib/client/clock.js +68 -0
  44. package/lib/client/connection.js +318 -0
  45. package/lib/client/consoleMessage.js +58 -0
  46. package/lib/client/coverage.js +44 -0
  47. package/lib/client/dialog.js +56 -0
  48. package/lib/client/download.js +62 -0
  49. package/lib/client/electron.js +138 -0
  50. package/lib/client/elementHandle.js +284 -0
  51. package/lib/client/errors.js +77 -0
  52. package/lib/client/eventEmitter.js +314 -0
  53. package/lib/client/events.js +103 -0
  54. package/lib/client/fetch.js +368 -0
  55. package/lib/client/fileChooser.js +46 -0
  56. package/lib/client/fileUtils.js +34 -0
  57. package/lib/client/frame.js +409 -0
  58. package/lib/client/harRouter.js +87 -0
  59. package/lib/client/input.js +84 -0
  60. package/lib/client/jsHandle.js +109 -0
  61. package/lib/client/jsonPipe.js +39 -0
  62. package/lib/client/localUtils.js +60 -0
  63. package/lib/client/locator.js +369 -0
  64. package/lib/client/network.js +747 -0
  65. package/lib/client/page.js +743 -0
  66. package/lib/client/pageAgent.js +64 -0
  67. package/lib/client/platform.js +77 -0
  68. package/lib/client/playwright.js +71 -0
  69. package/lib/client/selectors.js +55 -0
  70. package/lib/client/stream.js +39 -0
  71. package/lib/client/timeoutSettings.js +79 -0
  72. package/lib/client/tracing.js +119 -0
  73. package/lib/client/types.js +28 -0
  74. package/lib/client/video.js +59 -0
  75. package/lib/client/waiter.js +142 -0
  76. package/lib/client/webError.js +39 -0
  77. package/lib/client/webSocket.js +93 -0
  78. package/lib/client/worker.js +85 -0
  79. package/lib/client/writableStream.js +39 -0
  80. package/lib/generated/bindingsControllerSource.js +28 -0
  81. package/lib/generated/clockSource.js +28 -0
  82. package/lib/generated/injectedScriptSource.js +28 -0
  83. package/lib/generated/pollingRecorderSource.js +28 -0
  84. package/lib/generated/storageScriptSource.js +28 -0
  85. package/lib/generated/utilityScriptSource.js +28 -0
  86. package/lib/generated/webSocketMockSource.js +336 -0
  87. package/lib/inProcessFactory.js +60 -0
  88. package/lib/inprocess.js +3 -0
  89. package/lib/mcpBundle.js +84 -0
  90. package/lib/mcpBundleImpl/index.js +147 -0
  91. package/lib/outofprocess.js +76 -0
  92. package/lib/protocol/serializers.js +197 -0
  93. package/lib/protocol/validator.js +2969 -0
  94. package/lib/protocol/validatorPrimitives.js +193 -0
  95. package/lib/remote/playwrightConnection.js +129 -0
  96. package/lib/remote/playwrightServer.js +334 -0
  97. package/lib/server/agent/actionRunner.js +335 -0
  98. package/lib/server/agent/actions.js +128 -0
  99. package/lib/server/agent/codegen.js +111 -0
  100. package/lib/server/agent/context.js +150 -0
  101. package/lib/server/agent/expectTools.js +156 -0
  102. package/lib/server/agent/pageAgent.js +204 -0
  103. package/lib/server/agent/performTools.js +262 -0
  104. package/lib/server/agent/tool.js +109 -0
  105. package/lib/server/android/android.js +465 -0
  106. package/lib/server/android/backendAdb.js +177 -0
  107. package/lib/server/artifact.js +127 -0
  108. package/lib/server/bidi/bidiBrowser.js +549 -0
  109. package/lib/server/bidi/bidiChromium.js +148 -0
  110. package/lib/server/bidi/bidiConnection.js +213 -0
  111. package/lib/server/bidi/bidiDeserializer.js +116 -0
  112. package/lib/server/bidi/bidiExecutionContext.js +267 -0
  113. package/lib/server/bidi/bidiFirefox.js +128 -0
  114. package/lib/server/bidi/bidiInput.js +146 -0
  115. package/lib/server/bidi/bidiNetworkManager.js +383 -0
  116. package/lib/server/bidi/bidiOverCdp.js +102 -0
  117. package/lib/server/bidi/bidiPage.js +583 -0
  118. package/lib/server/bidi/bidiPdf.js +106 -0
  119. package/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
  120. package/lib/server/bidi/third_party/bidiKeyboard.js +256 -0
  121. package/lib/server/bidi/third_party/bidiProtocol.js +24 -0
  122. package/lib/server/bidi/third_party/bidiProtocolCore.js +180 -0
  123. package/lib/server/bidi/third_party/bidiProtocolPermissions.js +42 -0
  124. package/lib/server/bidi/third_party/bidiSerializer.js +148 -0
  125. package/lib/server/bidi/third_party/firefoxPrefs.js +259 -0
  126. package/lib/server/browser.js +149 -0
  127. package/lib/server/browserContext.js +702 -0
  128. package/lib/server/browserType.js +336 -0
  129. package/lib/server/callLog.js +82 -0
  130. package/lib/server/chromium/appIcon.png +0 -0
  131. package/lib/server/chromium/chromium.js +395 -0
  132. package/lib/server/chromium/chromiumSwitches.js +104 -0
  133. package/lib/server/chromium/crBrowser.js +511 -0
  134. package/lib/server/chromium/crConnection.js +197 -0
  135. package/lib/server/chromium/crCoverage.js +235 -0
  136. package/lib/server/chromium/crDevTools.js +111 -0
  137. package/lib/server/chromium/crDragDrop.js +131 -0
  138. package/lib/server/chromium/crExecutionContext.js +146 -0
  139. package/lib/server/chromium/crInput.js +187 -0
  140. package/lib/server/chromium/crNetworkManager.js +707 -0
  141. package/lib/server/chromium/crPage.js +1001 -0
  142. package/lib/server/chromium/crPdf.js +121 -0
  143. package/lib/server/chromium/crProtocolHelper.js +145 -0
  144. package/lib/server/chromium/crServiceWorker.js +136 -0
  145. package/lib/server/chromium/defaultFontFamilies.js +162 -0
  146. package/lib/server/chromium/protocol.d.js +16 -0
  147. package/lib/server/clock.js +149 -0
  148. package/lib/server/codegen/csharp.js +327 -0
  149. package/lib/server/codegen/java.js +274 -0
  150. package/lib/server/codegen/javascript.js +247 -0
  151. package/lib/server/codegen/jsonl.js +52 -0
  152. package/lib/server/codegen/language.js +132 -0
  153. package/lib/server/codegen/languages.js +68 -0
  154. package/lib/server/codegen/python.js +279 -0
  155. package/lib/server/codegen/types.js +16 -0
  156. package/lib/server/console.js +57 -0
  157. package/lib/server/cookieStore.js +206 -0
  158. package/lib/server/debugController.js +191 -0
  159. package/lib/server/debugger.js +119 -0
  160. package/lib/server/deviceDescriptors.js +39 -0
  161. package/lib/server/deviceDescriptorsSource.json +1779 -0
  162. package/lib/server/dialog.js +116 -0
  163. package/lib/server/dispatchers/androidDispatcher.js +325 -0
  164. package/lib/server/dispatchers/artifactDispatcher.js +118 -0
  165. package/lib/server/dispatchers/browserContextDispatcher.js +384 -0
  166. package/lib/server/dispatchers/browserDispatcher.js +118 -0
  167. package/lib/server/dispatchers/browserTypeDispatcher.js +64 -0
  168. package/lib/server/dispatchers/cdpSessionDispatcher.js +44 -0
  169. package/lib/server/dispatchers/debugControllerDispatcher.js +78 -0
  170. package/lib/server/dispatchers/dialogDispatcher.js +47 -0
  171. package/lib/server/dispatchers/dispatcher.js +364 -0
  172. package/lib/server/dispatchers/electronDispatcher.js +89 -0
  173. package/lib/server/dispatchers/elementHandlerDispatcher.js +181 -0
  174. package/lib/server/dispatchers/frameDispatcher.js +227 -0
  175. package/lib/server/dispatchers/jsHandleDispatcher.js +85 -0
  176. package/lib/server/dispatchers/jsonPipeDispatcher.js +58 -0
  177. package/lib/server/dispatchers/localUtilsDispatcher.js +149 -0
  178. package/lib/server/dispatchers/networkDispatchers.js +213 -0
  179. package/lib/server/dispatchers/pageAgentDispatcher.js +96 -0
  180. package/lib/server/dispatchers/pageDispatcher.js +393 -0
  181. package/lib/server/dispatchers/playwrightDispatcher.js +108 -0
  182. package/lib/server/dispatchers/streamDispatcher.js +67 -0
  183. package/lib/server/dispatchers/tracingDispatcher.js +68 -0
  184. package/lib/server/dispatchers/webSocketRouteDispatcher.js +165 -0
  185. package/lib/server/dispatchers/writableStreamDispatcher.js +79 -0
  186. package/lib/server/dom.js +815 -0
  187. package/lib/server/download.js +70 -0
  188. package/lib/server/electron/electron.js +273 -0
  189. package/lib/server/electron/loader.js +29 -0
  190. package/lib/server/errors.js +69 -0
  191. package/lib/server/fetch.js +621 -0
  192. package/lib/server/fileChooser.js +43 -0
  193. package/lib/server/fileUploadUtils.js +84 -0
  194. package/lib/server/firefox/ffBrowser.js +418 -0
  195. package/lib/server/firefox/ffConnection.js +142 -0
  196. package/lib/server/firefox/ffExecutionContext.js +150 -0
  197. package/lib/server/firefox/ffInput.js +159 -0
  198. package/lib/server/firefox/ffNetworkManager.js +256 -0
  199. package/lib/server/firefox/ffPage.js +497 -0
  200. package/lib/server/firefox/firefox.js +114 -0
  201. package/lib/server/firefox/protocol.d.js +16 -0
  202. package/lib/server/formData.js +147 -0
  203. package/lib/server/frameSelectors.js +160 -0
  204. package/lib/server/frames.js +1471 -0
  205. package/lib/server/har/harRecorder.js +147 -0
  206. package/lib/server/har/harTracer.js +607 -0
  207. package/lib/server/harBackend.js +157 -0
  208. package/lib/server/helper.js +96 -0
  209. package/lib/server/index.js +58 -0
  210. package/lib/server/input.js +277 -0
  211. package/lib/server/instrumentation.js +72 -0
  212. package/lib/server/javascript.js +291 -0
  213. package/lib/server/launchApp.js +128 -0
  214. package/lib/server/localUtils.js +214 -0
  215. package/lib/server/macEditingCommands.js +143 -0
  216. package/lib/server/network.js +667 -0
  217. package/lib/server/page.js +830 -0
  218. package/lib/server/pipeTransport.js +89 -0
  219. package/lib/server/playwright.js +69 -0
  220. package/lib/server/progress.js +132 -0
  221. package/lib/server/protocolError.js +52 -0
  222. package/lib/server/recorder/chat.js +161 -0
  223. package/lib/server/recorder/recorderApp.js +366 -0
  224. package/lib/server/recorder/recorderRunner.js +138 -0
  225. package/lib/server/recorder/recorderSignalProcessor.js +83 -0
  226. package/lib/server/recorder/recorderUtils.js +157 -0
  227. package/lib/server/recorder/throttledFile.js +57 -0
  228. package/lib/server/recorder.js +499 -0
  229. package/lib/server/registry/browserFetcher.js +177 -0
  230. package/lib/server/registry/dependencies.js +371 -0
  231. package/lib/server/registry/index.js +1422 -0
  232. package/lib/server/registry/nativeDeps.js +1280 -0
  233. package/lib/server/registry/oopDownloadBrowserMain.js +127 -0
  234. package/lib/server/screencast.js +190 -0
  235. package/lib/server/screenshotter.js +333 -0
  236. package/lib/server/selectors.js +112 -0
  237. package/lib/server/socksClientCertificatesInterceptor.js +383 -0
  238. package/lib/server/socksInterceptor.js +95 -0
  239. package/lib/server/trace/exporter/traceExporter.js +1102 -0
  240. package/lib/server/trace/recorder/snapshotter.js +147 -0
  241. package/lib/server/trace/recorder/snapshotterInjected.js +561 -0
  242. package/lib/server/trace/recorder/tracing.js +604 -0
  243. package/lib/server/trace/viewer/traceParser.js +72 -0
  244. package/lib/server/trace/viewer/traceViewer.js +245 -0
  245. package/lib/server/transport.js +181 -0
  246. package/lib/server/types.js +28 -0
  247. package/lib/server/usKeyboardLayout.js +145 -0
  248. package/lib/server/utils/ascii.js +44 -0
  249. package/lib/server/utils/comparators.js +139 -0
  250. package/lib/server/utils/crypto.js +216 -0
  251. package/lib/server/utils/debug.js +42 -0
  252. package/lib/server/utils/debugLogger.js +122 -0
  253. package/lib/server/utils/env.js +73 -0
  254. package/lib/server/utils/eventsHelper.js +39 -0
  255. package/lib/server/utils/expectUtils.js +123 -0
  256. package/lib/server/utils/fileUtils.js +191 -0
  257. package/lib/server/utils/happyEyeballs.js +207 -0
  258. package/lib/server/utils/hostPlatform.js +123 -0
  259. package/lib/server/utils/httpServer.js +203 -0
  260. package/lib/server/utils/imageUtils.js +141 -0
  261. package/lib/server/utils/image_tools/colorUtils.js +89 -0
  262. package/lib/server/utils/image_tools/compare.js +109 -0
  263. package/lib/server/utils/image_tools/imageChannel.js +78 -0
  264. package/lib/server/utils/image_tools/stats.js +102 -0
  265. package/lib/server/utils/linuxUtils.js +71 -0
  266. package/lib/server/utils/network.js +242 -0
  267. package/lib/server/utils/nodePlatform.js +154 -0
  268. package/lib/server/utils/pipeTransport.js +84 -0
  269. package/lib/server/utils/processLauncher.js +241 -0
  270. package/lib/server/utils/profiler.js +65 -0
  271. package/lib/server/utils/socksProxy.js +511 -0
  272. package/lib/server/utils/spawnAsync.js +41 -0
  273. package/lib/server/utils/task.js +51 -0
  274. package/lib/server/utils/userAgent.js +98 -0
  275. package/lib/server/utils/wsServer.js +121 -0
  276. package/lib/server/utils/zipFile.js +74 -0
  277. package/lib/server/utils/zones.js +57 -0
  278. package/lib/server/videoRecorder.js +124 -0
  279. package/lib/server/webkit/protocol.d.js +16 -0
  280. package/lib/server/webkit/webkit.js +108 -0
  281. package/lib/server/webkit/wkBrowser.js +335 -0
  282. package/lib/server/webkit/wkConnection.js +144 -0
  283. package/lib/server/webkit/wkExecutionContext.js +154 -0
  284. package/lib/server/webkit/wkInput.js +181 -0
  285. package/lib/server/webkit/wkInterceptableRequest.js +197 -0
  286. package/lib/server/webkit/wkPage.js +1158 -0
  287. package/lib/server/webkit/wkProvisionalPage.js +83 -0
  288. package/lib/server/webkit/wkWorkers.js +105 -0
  289. package/lib/third_party/pixelmatch.js +255 -0
  290. package/lib/utils/isomorphic/ariaSnapshot.js +455 -0
  291. package/lib/utils/isomorphic/assert.js +31 -0
  292. package/lib/utils/isomorphic/colors.js +72 -0
  293. package/lib/utils/isomorphic/cssParser.js +245 -0
  294. package/lib/utils/isomorphic/cssTokenizer.js +1051 -0
  295. package/lib/utils/isomorphic/headers.js +53 -0
  296. package/lib/utils/isomorphic/locatorGenerators.js +689 -0
  297. package/lib/utils/isomorphic/locatorParser.js +176 -0
  298. package/lib/utils/isomorphic/locatorUtils.js +81 -0
  299. package/lib/utils/isomorphic/lruCache.js +51 -0
  300. package/lib/utils/isomorphic/manualPromise.js +114 -0
  301. package/lib/utils/isomorphic/mimeType.js +459 -0
  302. package/lib/utils/isomorphic/multimap.js +80 -0
  303. package/lib/utils/isomorphic/protocolFormatter.js +81 -0
  304. package/lib/utils/isomorphic/protocolMetainfo.js +330 -0
  305. package/lib/utils/isomorphic/rtti.js +43 -0
  306. package/lib/utils/isomorphic/selectorParser.js +386 -0
  307. package/lib/utils/isomorphic/semaphore.js +54 -0
  308. package/lib/utils/isomorphic/stackTrace.js +158 -0
  309. package/lib/utils/isomorphic/stringUtils.js +204 -0
  310. package/lib/utils/isomorphic/time.js +49 -0
  311. package/lib/utils/isomorphic/timeoutRunner.js +66 -0
  312. package/lib/utils/isomorphic/trace/entries.js +16 -0
  313. package/lib/utils/isomorphic/trace/snapshotRenderer.js +499 -0
  314. package/lib/utils/isomorphic/trace/snapshotServer.js +120 -0
  315. package/lib/utils/isomorphic/trace/snapshotStorage.js +89 -0
  316. package/lib/utils/isomorphic/trace/traceLoader.js +131 -0
  317. package/lib/utils/isomorphic/trace/traceModel.js +365 -0
  318. package/lib/utils/isomorphic/trace/traceModernizer.js +400 -0
  319. package/lib/utils/isomorphic/trace/versions/traceV3.js +16 -0
  320. package/lib/utils/isomorphic/trace/versions/traceV4.js +16 -0
  321. package/lib/utils/isomorphic/trace/versions/traceV5.js +16 -0
  322. package/lib/utils/isomorphic/trace/versions/traceV6.js +16 -0
  323. package/lib/utils/isomorphic/trace/versions/traceV7.js +16 -0
  324. package/lib/utils/isomorphic/trace/versions/traceV8.js +16 -0
  325. package/lib/utils/isomorphic/traceUtils.js +58 -0
  326. package/lib/utils/isomorphic/types.js +16 -0
  327. package/lib/utils/isomorphic/urlMatch.js +190 -0
  328. package/lib/utils/isomorphic/utilityScriptSerializers.js +251 -0
  329. package/lib/utils/isomorphic/yaml.js +84 -0
  330. package/lib/utils.js +111 -0
  331. package/lib/utilsBundle.js +112 -0
  332. package/lib/utilsBundleImpl/index.js +218 -0
  333. package/lib/utilsBundleImpl/xdg-open +1066 -0
  334. package/lib/vite/htmlReport/index.html +84 -0
  335. package/lib/vite/recorder/assets/codeMirrorModule-DYBRYzYX.css +1 -0
  336. package/lib/vite/recorder/assets/codeMirrorModule-DadYNm1I.js +32 -0
  337. package/lib/vite/recorder/assets/codicon-DCmgc-ay.ttf +0 -0
  338. package/lib/vite/recorder/assets/index-BSjZa4pk.css +1 -0
  339. package/lib/vite/recorder/assets/index-BhTWtUlo.js +193 -0
  340. package/lib/vite/recorder/index.html +29 -0
  341. package/lib/vite/recorder/playwright-logo.svg +9 -0
  342. package/lib/vite/traceViewer/assets/codeMirrorModule-a5XoALAZ.js +32 -0
  343. package/lib/vite/traceViewer/assets/defaultSettingsView-CJSZINFr.js +266 -0
  344. package/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js +9 -0
  345. package/lib/vite/traceViewer/codeMirrorModule.DYBRYzYX.css +1 -0
  346. package/lib/vite/traceViewer/codicon.DCmgc-ay.ttf +0 -0
  347. package/lib/vite/traceViewer/defaultSettingsView.7ch9cixO.css +1 -0
  348. package/lib/vite/traceViewer/index.BVu7tZDe.css +1 -0
  349. package/lib/vite/traceViewer/index.Dd9jebqr.js +2 -0
  350. package/lib/vite/traceViewer/index.html +43 -0
  351. package/lib/vite/traceViewer/manifest.webmanifest +16 -0
  352. package/lib/vite/traceViewer/playwright-logo.svg +9 -0
  353. package/lib/vite/traceViewer/snapshot.html +21 -0
  354. package/lib/vite/traceViewer/sw.bundle.js +5 -0
  355. package/lib/vite/traceViewer/uiMode.Btcz36p_.css +1 -0
  356. package/lib/vite/traceViewer/uiMode.CQJ9SCIQ.js +5 -0
  357. package/lib/vite/traceViewer/uiMode.html +17 -0
  358. package/lib/vite/traceViewer/xtermModule.DYP7pi_n.css +32 -0
  359. package/lib/zipBundle.js +34 -0
  360. package/lib/zipBundleImpl.js +5 -0
  361. package/package.json +43 -0
  362. package/types/protocol.d.ts +23824 -0
  363. package/types/structs.d.ts +45 -0
  364. package/types/types.d.ts +23170 -0
@@ -0,0 +1,121 @@
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 crPdf_exports = {};
20
+ __export(crPdf_exports, {
21
+ CRPDF: () => CRPDF
22
+ });
23
+ module.exports = __toCommonJS(crPdf_exports);
24
+ var import_crProtocolHelper = require("./crProtocolHelper");
25
+ var import_utils = require("../../utils");
26
+ const PagePaperFormats = {
27
+ letter: { width: 8.5, height: 11 },
28
+ legal: { width: 8.5, height: 14 },
29
+ tabloid: { width: 11, height: 17 },
30
+ ledger: { width: 17, height: 11 },
31
+ a0: { width: 33.1, height: 46.8 },
32
+ a1: { width: 23.4, height: 33.1 },
33
+ a2: { width: 16.54, height: 23.4 },
34
+ a3: { width: 11.7, height: 16.54 },
35
+ a4: { width: 8.27, height: 11.7 },
36
+ a5: { width: 5.83, height: 8.27 },
37
+ a6: { width: 4.13, height: 5.83 }
38
+ };
39
+ const unitToPixels = {
40
+ "px": 1,
41
+ "in": 96,
42
+ "cm": 37.8,
43
+ "mm": 3.78
44
+ };
45
+ function convertPrintParameterToInches(text) {
46
+ if (text === void 0)
47
+ return void 0;
48
+ let unit = text.substring(text.length - 2).toLowerCase();
49
+ let valueText = "";
50
+ if (unitToPixels.hasOwnProperty(unit)) {
51
+ valueText = text.substring(0, text.length - 2);
52
+ } else {
53
+ unit = "px";
54
+ valueText = text;
55
+ }
56
+ const value = Number(valueText);
57
+ (0, import_utils.assert)(!isNaN(value), "Failed to parse parameter value: " + text);
58
+ const pixels = value * unitToPixels[unit];
59
+ return pixels / 96;
60
+ }
61
+ class CRPDF {
62
+ constructor(client) {
63
+ this._client = client;
64
+ }
65
+ async generate(options) {
66
+ const {
67
+ scale = 1,
68
+ displayHeaderFooter = false,
69
+ headerTemplate = "",
70
+ footerTemplate = "",
71
+ printBackground = false,
72
+ landscape = false,
73
+ pageRanges = "",
74
+ preferCSSPageSize = false,
75
+ margin = {},
76
+ tagged = false,
77
+ outline = false
78
+ } = options;
79
+ let paperWidth = 8.5;
80
+ let paperHeight = 11;
81
+ if (options.format) {
82
+ const format = PagePaperFormats[options.format.toLowerCase()];
83
+ (0, import_utils.assert)(format, "Unknown paper format: " + options.format);
84
+ paperWidth = format.width;
85
+ paperHeight = format.height;
86
+ } else {
87
+ paperWidth = convertPrintParameterToInches(options.width) || paperWidth;
88
+ paperHeight = convertPrintParameterToInches(options.height) || paperHeight;
89
+ }
90
+ const marginTop = convertPrintParameterToInches(margin.top) || 0;
91
+ const marginLeft = convertPrintParameterToInches(margin.left) || 0;
92
+ const marginBottom = convertPrintParameterToInches(margin.bottom) || 0;
93
+ const marginRight = convertPrintParameterToInches(margin.right) || 0;
94
+ const generateDocumentOutline = outline;
95
+ const generateTaggedPDF = tagged;
96
+ const result = await this._client.send("Page.printToPDF", {
97
+ transferMode: "ReturnAsStream",
98
+ landscape,
99
+ displayHeaderFooter,
100
+ headerTemplate,
101
+ footerTemplate,
102
+ printBackground,
103
+ scale,
104
+ paperWidth,
105
+ paperHeight,
106
+ marginTop,
107
+ marginBottom,
108
+ marginLeft,
109
+ marginRight,
110
+ pageRanges,
111
+ preferCSSPageSize,
112
+ generateTaggedPDF,
113
+ generateDocumentOutline
114
+ });
115
+ return await (0, import_crProtocolHelper.readProtocolStream)(this._client, result.stream);
116
+ }
117
+ }
118
+ // Annotate the CommonJS export names for ESM import in node:
119
+ 0 && (module.exports = {
120
+ CRPDF
121
+ });
@@ -0,0 +1,145 @@
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 crProtocolHelper_exports = {};
30
+ __export(crProtocolHelper_exports, {
31
+ exceptionToError: () => exceptionToError,
32
+ getExceptionMessage: () => getExceptionMessage,
33
+ readProtocolStream: () => readProtocolStream,
34
+ releaseObject: () => releaseObject,
35
+ saveProtocolStream: () => saveProtocolStream,
36
+ toButtonsMask: () => toButtonsMask,
37
+ toConsoleMessageLocation: () => toConsoleMessageLocation,
38
+ toModifiersMask: () => toModifiersMask
39
+ });
40
+ module.exports = __toCommonJS(crProtocolHelper_exports);
41
+ var import_fs = __toESM(require("fs"));
42
+ var import_stackTrace = require("../../utils/isomorphic/stackTrace");
43
+ var import_fileUtils = require("../utils/fileUtils");
44
+ function getExceptionMessage(exceptionDetails) {
45
+ if (exceptionDetails.exception)
46
+ return exceptionDetails.exception.description || String(exceptionDetails.exception.value);
47
+ let message = exceptionDetails.text;
48
+ if (exceptionDetails.stackTrace) {
49
+ for (const callframe of exceptionDetails.stackTrace.callFrames) {
50
+ const location = callframe.url + ":" + callframe.lineNumber + ":" + callframe.columnNumber;
51
+ const functionName = callframe.functionName || "<anonymous>";
52
+ message += `
53
+ at ${functionName} (${location})`;
54
+ }
55
+ }
56
+ return message;
57
+ }
58
+ async function releaseObject(client, objectId) {
59
+ await client.send("Runtime.releaseObject", { objectId }).catch((error) => {
60
+ });
61
+ }
62
+ async function saveProtocolStream(client, handle, path) {
63
+ let eof = false;
64
+ await (0, import_fileUtils.mkdirIfNeeded)(path);
65
+ const fd = await import_fs.default.promises.open(path, "w");
66
+ while (!eof) {
67
+ const response = await client.send("IO.read", { handle });
68
+ eof = response.eof;
69
+ const buf = Buffer.from(response.data, response.base64Encoded ? "base64" : void 0);
70
+ await fd.write(buf);
71
+ }
72
+ await fd.close();
73
+ await client.send("IO.close", { handle });
74
+ }
75
+ async function readProtocolStream(client, handle) {
76
+ let eof = false;
77
+ const chunks = [];
78
+ while (!eof) {
79
+ const response = await client.send("IO.read", { handle });
80
+ eof = response.eof;
81
+ const buf = Buffer.from(response.data, response.base64Encoded ? "base64" : void 0);
82
+ chunks.push(buf);
83
+ }
84
+ await client.send("IO.close", { handle });
85
+ return Buffer.concat(chunks);
86
+ }
87
+ function toConsoleMessageLocation(stackTrace) {
88
+ return stackTrace && stackTrace.callFrames.length ? {
89
+ url: stackTrace.callFrames[0].url,
90
+ lineNumber: stackTrace.callFrames[0].lineNumber,
91
+ columnNumber: stackTrace.callFrames[0].columnNumber
92
+ } : { url: "", lineNumber: 0, columnNumber: 0 };
93
+ }
94
+ function exceptionToError(exceptionDetails) {
95
+ const messageWithStack = getExceptionMessage(exceptionDetails);
96
+ const lines = messageWithStack.split("\n");
97
+ const firstStackTraceLine = lines.findIndex((line) => line.startsWith(" at"));
98
+ let messageWithName = "";
99
+ let stack = "";
100
+ if (firstStackTraceLine === -1) {
101
+ messageWithName = messageWithStack;
102
+ } else {
103
+ messageWithName = lines.slice(0, firstStackTraceLine).join("\n");
104
+ stack = messageWithStack;
105
+ }
106
+ const { name, message } = (0, import_stackTrace.splitErrorMessage)(messageWithName);
107
+ const err = new Error(message);
108
+ err.stack = stack;
109
+ const nameOverride = exceptionDetails.exception?.preview?.properties.find((o) => o.name === "name");
110
+ err.name = nameOverride ? nameOverride.value ?? "Error" : name;
111
+ return err;
112
+ }
113
+ function toModifiersMask(modifiers) {
114
+ let mask = 0;
115
+ if (modifiers.has("Alt"))
116
+ mask |= 1;
117
+ if (modifiers.has("Control"))
118
+ mask |= 2;
119
+ if (modifiers.has("Meta"))
120
+ mask |= 4;
121
+ if (modifiers.has("Shift"))
122
+ mask |= 8;
123
+ return mask;
124
+ }
125
+ function toButtonsMask(buttons) {
126
+ let mask = 0;
127
+ if (buttons.has("left"))
128
+ mask |= 1;
129
+ if (buttons.has("right"))
130
+ mask |= 2;
131
+ if (buttons.has("middle"))
132
+ mask |= 4;
133
+ return mask;
134
+ }
135
+ // Annotate the CommonJS export names for ESM import in node:
136
+ 0 && (module.exports = {
137
+ exceptionToError,
138
+ getExceptionMessage,
139
+ readProtocolStream,
140
+ releaseObject,
141
+ saveProtocolStream,
142
+ toButtonsMask,
143
+ toConsoleMessageLocation,
144
+ toModifiersMask
145
+ });
@@ -0,0 +1,136 @@
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 crServiceWorker_exports = {};
30
+ __export(crServiceWorker_exports, {
31
+ CRServiceWorker: () => CRServiceWorker
32
+ });
33
+ module.exports = __toCommonJS(crServiceWorker_exports);
34
+ var import_page = require("../page");
35
+ var import_crExecutionContext = require("./crExecutionContext");
36
+ var import_crNetworkManager = require("./crNetworkManager");
37
+ var import_browserContext = require("../browserContext");
38
+ var network = __toESM(require("../network"));
39
+ var import_console = require("../console");
40
+ var import_crProtocolHelper = require("./crProtocolHelper");
41
+ class CRServiceWorker extends import_page.Worker {
42
+ constructor(browserContext, session, url) {
43
+ super(browserContext, url);
44
+ this._session = session;
45
+ this.browserContext = browserContext;
46
+ if (!process.env.PLAYWRIGHT_DISABLE_SERVICE_WORKER_NETWORK)
47
+ this._networkManager = new import_crNetworkManager.CRNetworkManager(null, this);
48
+ session.once("Runtime.executionContextCreated", (event) => {
49
+ this.createExecutionContext(new import_crExecutionContext.CRExecutionContext(session, event.context));
50
+ });
51
+ if (this.browserContext._browser.majorVersion() >= 143)
52
+ session.on("Inspector.workerScriptLoaded", () => this.workerScriptLoaded());
53
+ else
54
+ this.workerScriptLoaded();
55
+ if (this._networkManager && this._isNetworkInspectionEnabled()) {
56
+ this.updateRequestInterception();
57
+ this.updateExtraHTTPHeaders();
58
+ this.updateHttpCredentials();
59
+ this.updateOffline();
60
+ this._networkManager.addSession(
61
+ session,
62
+ void 0,
63
+ true
64
+ /* isMain */
65
+ ).catch(() => {
66
+ });
67
+ }
68
+ session.on("Runtime.consoleAPICalled", (event) => {
69
+ if (!this.existingExecutionContext || process.env.PLAYWRIGHT_DISABLE_SERVICE_WORKER_CONSOLE)
70
+ return;
71
+ const args = event.args.map((o) => (0, import_crExecutionContext.createHandle)(this.existingExecutionContext, o));
72
+ const message = new import_console.ConsoleMessage(null, this, event.type, void 0, args, (0, import_crProtocolHelper.toConsoleMessageLocation)(event.stackTrace));
73
+ this.browserContext.emit(import_browserContext.BrowserContext.Events.Console, message);
74
+ });
75
+ session.send("Runtime.enable", {}).catch((e) => {
76
+ });
77
+ session.send("Runtime.runIfWaitingForDebugger").catch((e) => {
78
+ });
79
+ session.on("Inspector.targetReloadedAfterCrash", () => {
80
+ session._sendMayFail("Runtime.runIfWaitingForDebugger", {});
81
+ });
82
+ }
83
+ didClose() {
84
+ this._networkManager?.removeSession(this._session);
85
+ this._session.dispose();
86
+ super.didClose();
87
+ }
88
+ async updateOffline() {
89
+ if (!this._isNetworkInspectionEnabled())
90
+ return;
91
+ await this._networkManager?.setOffline(!!this.browserContext._options.offline).catch(() => {
92
+ });
93
+ }
94
+ async updateHttpCredentials() {
95
+ if (!this._isNetworkInspectionEnabled())
96
+ return;
97
+ await this._networkManager?.authenticate(this.browserContext._options.httpCredentials || null).catch(() => {
98
+ });
99
+ }
100
+ async updateExtraHTTPHeaders() {
101
+ if (!this._isNetworkInspectionEnabled())
102
+ return;
103
+ await this._networkManager?.setExtraHTTPHeaders(this.browserContext._options.extraHTTPHeaders || []).catch(() => {
104
+ });
105
+ }
106
+ async updateRequestInterception() {
107
+ if (!this._isNetworkInspectionEnabled())
108
+ return;
109
+ await this._networkManager?.setRequestInterception(this.needsRequestInterception()).catch(() => {
110
+ });
111
+ }
112
+ needsRequestInterception() {
113
+ return this._isNetworkInspectionEnabled() && this.browserContext.requestInterceptors.length > 0;
114
+ }
115
+ reportRequestFinished(request, response) {
116
+ this.browserContext.emit(import_browserContext.BrowserContext.Events.RequestFinished, { request, response });
117
+ }
118
+ requestFailed(request, _canceled) {
119
+ this.browserContext.emit(import_browserContext.BrowserContext.Events.RequestFailed, request);
120
+ }
121
+ requestReceivedResponse(response) {
122
+ this.browserContext.emit(import_browserContext.BrowserContext.Events.Response, response);
123
+ }
124
+ requestStarted(request, route) {
125
+ this.browserContext.emit(import_browserContext.BrowserContext.Events.Request, request);
126
+ if (route)
127
+ new network.Route(request, route).handle(this.browserContext.requestInterceptors);
128
+ }
129
+ _isNetworkInspectionEnabled() {
130
+ return this.browserContext._options.serviceWorkers !== "block";
131
+ }
132
+ }
133
+ // Annotate the CommonJS export names for ESM import in node:
134
+ 0 && (module.exports = {
135
+ CRServiceWorker
136
+ });
@@ -0,0 +1,162 @@
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 defaultFontFamilies_exports = {};
20
+ __export(defaultFontFamilies_exports, {
21
+ platformToFontFamilies: () => platformToFontFamilies
22
+ });
23
+ module.exports = __toCommonJS(defaultFontFamilies_exports);
24
+ const platformToFontFamilies = {
25
+ "linux": {
26
+ "fontFamilies": {
27
+ "standard": "Times New Roman",
28
+ "fixed": "Monospace",
29
+ "serif": "Times New Roman",
30
+ "sansSerif": "Arial",
31
+ "cursive": "Comic Sans MS",
32
+ "fantasy": "Impact"
33
+ }
34
+ },
35
+ "mac": {
36
+ "fontFamilies": {
37
+ "standard": "Times",
38
+ "fixed": "Courier",
39
+ "serif": "Times",
40
+ "sansSerif": "Helvetica",
41
+ "cursive": "Apple Chancery",
42
+ "fantasy": "Papyrus"
43
+ },
44
+ "forScripts": [
45
+ {
46
+ "script": "jpan",
47
+ "fontFamilies": {
48
+ "standard": "Hiragino Kaku Gothic ProN",
49
+ "fixed": "Osaka-Mono",
50
+ "serif": "Hiragino Mincho ProN",
51
+ "sansSerif": "Hiragino Kaku Gothic ProN"
52
+ }
53
+ },
54
+ {
55
+ "script": "hang",
56
+ "fontFamilies": {
57
+ "standard": "Apple SD Gothic Neo",
58
+ "serif": "AppleMyungjo",
59
+ "sansSerif": "Apple SD Gothic Neo"
60
+ }
61
+ },
62
+ {
63
+ "script": "hans",
64
+ "fontFamilies": {
65
+ "standard": ",PingFang SC,STHeiti",
66
+ "serif": "Songti SC",
67
+ "sansSerif": ",PingFang SC,STHeiti",
68
+ "cursive": "Kaiti SC"
69
+ }
70
+ },
71
+ {
72
+ "script": "hant",
73
+ "fontFamilies": {
74
+ "standard": ",PingFang TC,Heiti TC",
75
+ "serif": "Songti TC",
76
+ "sansSerif": ",PingFang TC,Heiti TC",
77
+ "cursive": "Kaiti TC"
78
+ }
79
+ }
80
+ ]
81
+ },
82
+ "win": {
83
+ "fontFamilies": {
84
+ "standard": "Times New Roman",
85
+ "fixed": "Consolas",
86
+ "serif": "Times New Roman",
87
+ "sansSerif": "Arial",
88
+ "cursive": "Comic Sans MS",
89
+ "fantasy": "Impact"
90
+ },
91
+ "forScripts": [
92
+ {
93
+ "script": "cyrl",
94
+ "fontFamilies": {
95
+ "standard": "Times New Roman",
96
+ "fixed": "Courier New",
97
+ "serif": "Times New Roman",
98
+ "sansSerif": "Arial"
99
+ }
100
+ },
101
+ {
102
+ "script": "arab",
103
+ "fontFamilies": {
104
+ "fixed": "Courier New",
105
+ "sansSerif": "Segoe UI"
106
+ }
107
+ },
108
+ {
109
+ "script": "grek",
110
+ "fontFamilies": {
111
+ "standard": "Times New Roman",
112
+ "fixed": "Courier New",
113
+ "serif": "Times New Roman",
114
+ "sansSerif": "Arial"
115
+ }
116
+ },
117
+ {
118
+ "script": "jpan",
119
+ "fontFamilies": {
120
+ "standard": ",Meiryo,Yu Gothic",
121
+ "fixed": "MS Gothic",
122
+ "serif": ",Yu Mincho,MS PMincho",
123
+ "sansSerif": ",Meiryo,Yu Gothic"
124
+ }
125
+ },
126
+ {
127
+ "script": "hang",
128
+ "fontFamilies": {
129
+ "standard": "Malgun Gothic",
130
+ "fixed": "Gulimche",
131
+ "serif": "Batang",
132
+ "sansSerif": "Malgun Gothic",
133
+ "cursive": "Gungsuh"
134
+ }
135
+ },
136
+ {
137
+ "script": "hans",
138
+ "fontFamilies": {
139
+ "standard": "Microsoft YaHei",
140
+ "fixed": "NSimsun",
141
+ "serif": "Simsun",
142
+ "sansSerif": "Microsoft YaHei",
143
+ "cursive": "KaiTi"
144
+ }
145
+ },
146
+ {
147
+ "script": "hant",
148
+ "fontFamilies": {
149
+ "standard": "Microsoft JhengHei",
150
+ "fixed": "MingLiU",
151
+ "serif": "PMingLiU",
152
+ "sansSerif": "Microsoft JhengHei",
153
+ "cursive": "DFKai-SB"
154
+ }
155
+ }
156
+ ]
157
+ }
158
+ };
159
+ // Annotate the CommonJS export names for ESM import in node:
160
+ 0 && (module.exports = {
161
+ platformToFontFamilies
162
+ });
@@ -0,0 +1,16 @@
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 __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var protocol_d_exports = {};
16
+ module.exports = __toCommonJS(protocol_d_exports);