patchright-core 1.51.2 → 1.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browsers.json +15 -13
- package/lib/androidServerImpl.js +42 -48
- package/lib/browserServerImpl.js +54 -67
- package/lib/cli/driver.js +71 -69
- package/lib/cli/program.js +312 -328
- package/lib/cli/programWithTestStub.js +51 -45
- package/lib/client/accessibility.js +31 -32
- package/lib/client/android.js +141 -228
- package/lib/client/api.js +135 -283
- package/lib/client/artifact.js +39 -36
- package/lib/client/browser.js +57 -61
- package/lib/client/browserContext.js +297 -326
- package/lib/client/browserType.js +92 -106
- package/lib/client/cdpSession.js +29 -31
- package/lib/client/channelOwner.js +82 -95
- package/lib/client/clientHelper.js +46 -38
- package/lib/client/clientInstrumentation.js +40 -37
- package/lib/client/clientStackTrace.js +41 -37
- package/lib/client/clock.js +36 -36
- package/lib/client/connection.js +190 -212
- package/lib/client/consoleMessage.js +31 -28
- package/lib/client/coverage.js +25 -22
- package/lib/client/dialog.js +30 -31
- package/lib/client/download.js +25 -25
- package/lib/client/electron.js +73 -75
- package/lib/client/elementHandle.js +111 -147
- package/lib/client/errors.js +53 -53
- package/lib/client/eventEmitter.js +124 -121
- package/lib/client/events.js +72 -68
- package/lib/client/fetch.js +135 -158
- package/lib/client/fileChooser.js +25 -24
- package/lib/client/fileUtils.js +31 -28
- package/lib/client/frame.js +187 -306
- package/lib/client/harRouter.js +42 -52
- package/lib/client/input.js +40 -69
- package/lib/client/jsHandle.js +54 -69
- package/lib/client/jsonPipe.js +27 -23
- package/lib/client/localUtils.js +29 -28
- package/lib/client/locator.js +161 -245
- package/lib/client/network.js +277 -295
- package/lib/client/page.js +270 -318
- package/lib/client/platform.js +46 -43
- package/lib/client/playwright.js +51 -66
- package/lib/client/selectors.js +48 -46
- package/lib/client/stream.js +29 -25
- package/lib/client/timeoutSettings.js +49 -39
- package/lib/client/tracing.js +48 -84
- package/lib/client/types.js +26 -22
- package/lib/client/video.js +35 -27
- package/lib/client/waiter.js +69 -88
- package/lib/client/webError.js +25 -23
- package/lib/client/webSocket.js +61 -56
- package/lib/client/worker.js +48 -58
- package/lib/client/writableStream.js +27 -23
- package/lib/generated/clockSource.js +26 -5
- package/lib/generated/consoleApiSource.js +26 -5
- package/lib/generated/injectedScriptSource.js +26 -5
- package/lib/generated/pollingRecorderSource.js +26 -5
- package/lib/generated/utilityScriptSource.js +26 -5
- package/lib/generated/webSocketMockSource.js +375 -4
- package/lib/inProcessFactory.js +53 -53
- package/lib/inprocess.js +2 -19
- package/lib/outofprocess.js +53 -46
- package/lib/protocol/debug.js +209 -25
- package/lib/protocol/serializers.js +153 -134
- package/lib/protocol/validator.js +2714 -2714
- package/lib/protocol/validatorPrimitives.js +114 -73
- package/lib/remote/playwrightConnection.js +140 -157
- package/lib/remote/playwrightServer.js +99 -84
- package/lib/server/accessibility.js +44 -37
- package/lib/server/android/android.js +216 -209
- package/lib/server/android/backendAdb.js +89 -82
- package/lib/server/artifact.js +78 -55
- package/lib/server/bidi/bidiBrowser.js +221 -155
- package/lib/server/bidi/bidiChromium.js +106 -79
- package/lib/server/bidi/bidiConnection.js +66 -83
- package/lib/server/bidi/bidiExecutionContext.js +128 -113
- package/lib/server/bidi/bidiFirefox.js +76 -69
- package/lib/server/bidi/bidiInput.js +86 -97
- package/lib/server/bidi/bidiNetworkManager.js +137 -154
- package/lib/server/bidi/bidiOverCdp.js +57 -58
- package/lib/server/bidi/bidiPage.js +247 -219
- package/lib/server/bidi/bidiPdf.js +52 -86
- package/lib/server/bidi/third_party/bidiCommands.d.js +22 -0
- package/lib/server/bidi/third_party/bidiDeserializer.js +55 -50
- package/lib/server/bidi/third_party/bidiKeyboard.js +236 -220
- package/lib/server/bidi/third_party/bidiProtocol.js +144 -131
- package/lib/server/bidi/third_party/bidiSerializer.js +67 -63
- package/lib/server/bidi/third_party/firefoxPrefs.js +141 -119
- package/lib/server/browser.js +76 -84
- package/lib/server/browserContext.js +321 -346
- package/lib/server/browserType.js +169 -182
- package/lib/server/callLog.js +47 -44
- package/lib/server/chromium/chromium.js +212 -190
- package/lib/server/chromium/chromiumSwitches.js +86 -64
- package/lib/server/chromium/crAccessibility.js +157 -131
- package/lib/server/chromium/crBrowser.js +253 -273
- package/lib/server/chromium/crConnection.js +91 -116
- package/lib/server/chromium/crCoverage.js +113 -127
- package/lib/server/chromium/crDevTools.js +59 -51
- package/lib/server/chromium/crDragDrop.js +62 -79
- package/lib/server/chromium/crExecutionContext.js +88 -83
- package/lib/server/chromium/crInput.js +97 -95
- package/lib/server/chromium/crNetworkManager.js +288 -403
- package/lib/server/chromium/crPage.js +522 -608
- package/lib/server/chromium/crPdf.js +54 -86
- package/lib/server/chromium/crProtocolHelper.js +92 -80
- package/lib/server/chromium/crServiceWorker.js +82 -67
- package/lib/server/chromium/defaultFontFamilies.js +152 -135
- package/lib/server/chromium/protocol.d.js +16 -0
- package/lib/server/chromium/videoRecorder.js +65 -99
- package/lib/server/clock.js +62 -50
- package/lib/server/codegen/csharp.js +185 -160
- package/lib/server/codegen/java.js +155 -128
- package/lib/server/codegen/javascript.js +163 -148
- package/lib/server/codegen/jsonl.js +32 -28
- package/lib/server/codegen/language.js +75 -52
- package/lib/server/codegen/languages.js +65 -27
- package/lib/server/codegen/python.js +140 -125
- package/lib/server/codegen/types.js +15 -4
- package/lib/server/console.js +28 -32
- package/lib/server/cookieStore.js +105 -86
- package/lib/server/debugController.js +97 -124
- package/lib/server/debugger.js +82 -78
- package/lib/server/deviceDescriptors.js +37 -24
- package/lib/server/deviceDescriptorsSource.json +50 -50
- package/lib/server/dialog.js +36 -35
- package/lib/server/dispatchers/androidDispatcher.js +196 -107
- package/lib/server/dispatchers/artifactDispatcher.js +62 -62
- package/lib/server/dispatchers/browserContextDispatcher.js +176 -205
- package/lib/server/dispatchers/browserDispatcher.js +78 -97
- package/lib/server/dispatchers/browserTypeDispatcher.js +35 -35
- package/lib/server/dispatchers/cdpSessionDispatcher.js +32 -36
- package/lib/server/dispatchers/debugControllerDispatcher.js +48 -66
- package/lib/server/dispatchers/dialogDispatcher.js +30 -27
- package/lib/server/dispatchers/dispatcher.js +169 -220
- package/lib/server/dispatchers/electronDispatcher.js +54 -57
- package/lib/server/dispatchers/elementHandlerDispatcher.js +77 -119
- package/lib/server/dispatchers/frameDispatcher.js +99 -163
- package/lib/server/dispatchers/jsHandleDispatcher.js +49 -66
- package/lib/server/dispatchers/jsonPipeDispatcher.js +35 -36
- package/lib/server/dispatchers/localUtilsDispatcher.js +95 -80
- package/lib/server/dispatchers/networkDispatchers.js +90 -107
- package/lib/server/dispatchers/pageDispatcher.js +128 -169
- package/lib/server/dispatchers/playwrightDispatcher.js +69 -76
- package/lib/server/dispatchers/selectorsDispatcher.js +28 -24
- package/lib/server/dispatchers/streamDispatcher.js +42 -45
- package/lib/server/dispatchers/tracingDispatcher.js +36 -41
- package/lib/server/dispatchers/webSocketRouteDispatcher.js +96 -131
- package/lib/server/dispatchers/writableStreamDispatcher.js +54 -38
- package/lib/server/dom.js +413 -443
- package/lib/server/download.js +45 -35
- package/lib/server/electron/electron.js +156 -176
- package/lib/server/electron/loader.js +8 -36
- package/lib/server/errors.js +47 -46
- package/lib/server/fetch.js +289 -323
- package/lib/server/fileChooser.js +25 -24
- package/lib/server/fileUploadUtils.js +65 -59
- package/lib/server/firefox/ffAccessibility.js +153 -131
- package/lib/server/firefox/ffBrowser.js +213 -277
- package/lib/server/firefox/ffConnection.js +63 -84
- package/lib/server/firefox/ffExecutionContext.js +91 -73
- package/lib/server/firefox/ffInput.js +67 -69
- package/lib/server/firefox/ffNetworkManager.js +131 -110
- package/lib/server/firefox/ffPage.js +236 -273
- package/lib/server/firefox/firefox.js +76 -67
- package/lib/server/firefox/protocol.d.js +16 -0
- package/lib/server/formData.js +107 -35
- package/lib/server/frameSelectors.js +77 -111
- package/lib/server/frames.js +741 -891
- package/lib/server/har/harRecorder.js +85 -77
- package/lib/server/har/harTracer.js +287 -222
- package/lib/server/harBackend.js +80 -80
- package/lib/server/helper.js +56 -59
- package/lib/server/index.js +59 -99
- package/lib/server/input.js +134 -163
- package/lib/server/instrumentation.js +49 -44
- package/lib/server/javascript.js +143 -134
- package/lib/server/launchApp.js +92 -73
- package/lib/server/localUtils.js +130 -122
- package/lib/server/macEditingCommands.js +141 -137
- package/lib/server/network.js +262 -296
- package/lib/server/page.js +329 -426
- package/lib/server/pageBinding.js +88 -0
- package/lib/server/pipeTransport.js +49 -45
- package/lib/server/playwright.js +60 -67
- package/lib/server/progress.js +56 -51
- package/lib/server/protocolError.js +34 -31
- package/lib/server/recorder/chat.js +70 -86
- package/lib/server/recorder/contextRecorder.js +134 -138
- package/lib/server/recorder/recorderApp.js +127 -136
- package/lib/server/recorder/recorderCollection.js +56 -44
- package/lib/server/recorder/recorderFrontend.js +15 -4
- package/lib/server/recorder/recorderRunner.js +79 -103
- package/lib/server/recorder/recorderUtils.js +56 -45
- package/lib/server/recorder/throttledFile.js +42 -30
- package/lib/server/recorder.js +177 -186
- package/lib/server/registry/browserFetcher.js +106 -101
- package/lib/server/registry/dependencies.js +245 -196
- package/lib/server/registry/index.js +904 -792
- package/lib/server/registry/nativeDeps.js +1073 -464
- package/lib/server/registry/oopDownloadBrowserMain.js +57 -75
- package/lib/server/screenshotter.js +166 -182
- package/lib/server/selectors.js +85 -46
- package/lib/server/socksClientCertificatesInterceptor.js +166 -185
- package/lib/server/socksInterceptor.js +62 -70
- package/lib/server/storageScript.js +94 -100
- package/lib/server/timeoutSettings.js +58 -43
- package/lib/server/trace/recorder/snapshotter.js +70 -89
- package/lib/server/trace/recorder/snapshotterInjected.js +238 -217
- package/lib/server/trace/recorder/tracing.js +321 -333
- package/lib/server/trace/test/inMemorySnapshotter.js +46 -52
- package/lib/server/trace/viewer/traceViewer.js +168 -146
- package/lib/server/transport.js +124 -133
- package/lib/server/types.js +26 -22
- package/lib/server/usKeyboardLayout.js +135 -545
- package/lib/server/utils/ascii.js +39 -26
- package/lib/server/utils/comparators.js +105 -103
- package/lib/server/utils/crypto.js +157 -112
- package/lib/server/utils/debug.js +37 -28
- package/lib/server/utils/debugLogger.js +69 -48
- package/lib/server/utils/env.js +52 -37
- package/lib/server/utils/eventsHelper.js +29 -28
- package/lib/server/utils/expectUtils.js +31 -26
- package/lib/server/utils/fileUtils.js +123 -136
- package/lib/server/utils/happyEyeballs.js +138 -123
- package/lib/server/utils/hostPlatform.js +84 -120
- package/lib/server/utils/httpServer.js +106 -121
- package/lib/server/utils/image_tools/colorUtils.js +42 -51
- package/lib/server/utils/image_tools/compare.js +44 -43
- package/lib/server/utils/image_tools/imageChannel.js +38 -30
- package/lib/server/utils/image_tools/stats.js +40 -40
- package/lib/server/utils/linuxUtils.js +50 -37
- package/lib/server/utils/network.js +143 -86
- package/lib/server/utils/nodePlatform.js +87 -79
- package/lib/server/utils/pipeTransport.js +44 -42
- package/lib/server/utils/processLauncher.js +111 -121
- package/lib/server/utils/profiler.js +52 -39
- package/lib/server/utils/socksProxy.js +280 -339
- package/lib/server/utils/spawnAsync.js +37 -41
- package/lib/server/utils/task.js +31 -38
- package/lib/server/utils/userAgent.js +73 -66
- package/lib/server/utils/wsServer.js +73 -69
- package/lib/server/utils/zipFile.js +36 -37
- package/lib/server/utils/zones.js +37 -34
- package/lib/server/webkit/protocol.d.js +16 -0
- package/lib/server/webkit/webkit.js +76 -63
- package/lib/server/webkit/wkAccessibility.js +161 -118
- package/lib/server/webkit/wkBrowser.js +159 -176
- package/lib/server/webkit/wkConnection.js +59 -83
- package/lib/server/webkit/wkExecutionContext.js +84 -70
- package/lib/server/webkit/wkInput.js +82 -80
- package/lib/server/webkit/wkInterceptableRequest.js +102 -95
- package/lib/server/webkit/wkPage.js +525 -619
- package/lib/server/webkit/wkProvisionalPage.js +45 -56
- package/lib/server/webkit/wkWorkers.js +77 -77
- package/lib/utils/isomorphic/ariaSnapshot.js +144 -152
- package/lib/utils/isomorphic/assert.js +28 -22
- package/lib/utils/isomorphic/builtins.js +90 -0
- package/lib/utils/isomorphic/colors.js +66 -59
- package/lib/utils/isomorphic/cssParser.js +121 -125
- package/lib/utils/isomorphic/cssTokenizer.js +436 -364
- package/lib/utils/isomorphic/headers.js +38 -37
- package/lib/utils/isomorphic/locatorGenerators.js +340 -357
- package/lib/utils/isomorphic/locatorParser.js +96 -105
- package/lib/utils/isomorphic/locatorUtils.js +63 -44
- package/lib/utils/isomorphic/manualPromise.js +47 -39
- package/lib/utils/isomorphic/mimeType.js +448 -25
- package/lib/utils/isomorphic/multimap.js +35 -27
- package/lib/utils/isomorphic/rtti.js +35 -33
- package/lib/utils/isomorphic/selectorParser.js +183 -193
- package/lib/utils/isomorphic/semaphore.js +27 -24
- package/lib/utils/isomorphic/stackTrace.js +87 -98
- package/lib/utils/isomorphic/stringUtils.js +113 -106
- package/lib/utils/isomorphic/time.js +41 -22
- package/lib/utils/isomorphic/timeoutRunner.js +55 -54
- package/lib/utils/isomorphic/traceUtils.js +38 -41
- package/lib/utils/isomorphic/types.js +15 -4
- package/lib/utils/isomorphic/urlMatch.js +112 -67
- package/lib/utils/isomorphic/utilityScriptSerializers.js +248 -0
- package/lib/utils.js +97 -443
- package/lib/utilsBundle.js +101 -52
- package/lib/vite/htmlReport/index.html +21 -15
- package/lib/vite/recorder/assets/{codeMirrorModule-B9YMkrwa.js → codeMirrorModule-DVQi6prl.js} +1 -1
- package/lib/vite/recorder/assets/index-97EUAAbk.js +184 -0
- package/lib/vite/recorder/index.html +1 -1
- package/lib/vite/traceViewer/assets/{codeMirrorModule-DpJ-EmBQ.js → codeMirrorModule-dvXVzLxY.js} +1 -1
- package/lib/vite/traceViewer/assets/defaultSettingsView-BjymbO6M.js +265 -0
- package/lib/vite/traceViewer/{defaultSettingsView.5fN5lw10.css → defaultSettingsView.QdHITyLI.css} +1 -1
- package/lib/vite/traceViewer/index.ChIUCJnj.js +2 -0
- package/lib/vite/traceViewer/index.html +3 -3
- package/lib/vite/traceViewer/sw.bundle.js +3 -3
- package/lib/vite/traceViewer/uiMode.html +3 -3
- package/lib/vite/traceViewer/uiMode.jUCiCtdp.js +5 -0
- package/lib/zipBundle.js +32 -23
- package/package.json +1 -1
- package/types/protocol.d.ts +436 -17
- package/types/types.d.ts +35 -16
- package/lib/server/isomorphic/utilityScriptSerializers.js +0 -229
- package/lib/vite/recorder/assets/index-ELPgmkwA.js +0 -184
- package/lib/vite/traceViewer/assets/defaultSettingsView-DTenqiGw.js +0 -259
- package/lib/vite/traceViewer/index.CUq7VgrV.js +0 -2
- package/lib/vite/traceViewer/uiMode.CHJSAD7F.js +0 -5
package/types/types.d.ts
CHANGED
|
@@ -3974,9 +3974,9 @@ export interface Page {
|
|
|
3974
3974
|
*
|
|
3975
3975
|
* **NOTE** Enabling routing disables http cache.
|
|
3976
3976
|
*
|
|
3977
|
-
* @param url A glob pattern, regex pattern or predicate
|
|
3978
|
-
* [`baseURL`](https://playwright.dev/docs/api/class-browser#browser-new-context-option-base-url)
|
|
3979
|
-
* options
|
|
3977
|
+
* @param url A glob pattern, regex pattern, or predicate that receives a [URL] to match during routing. If
|
|
3978
|
+
* [`baseURL`](https://playwright.dev/docs/api/class-browser#browser-new-context-option-base-url) is set in the
|
|
3979
|
+
* context options and the provided URL is a string that does not start with `*`, it is resolved using the
|
|
3980
3980
|
* [`new URL()`](https://developer.mozilla.org/en-US/docs/Web/API/URL/URL) constructor.
|
|
3981
3981
|
* @param handler handler function to route the request.
|
|
3982
3982
|
* @param options
|
|
@@ -9068,9 +9068,9 @@ export interface BrowserContext {
|
|
|
9068
9068
|
*
|
|
9069
9069
|
* **NOTE** Enabling routing disables http cache.
|
|
9070
9070
|
*
|
|
9071
|
-
* @param url A glob pattern, regex pattern or predicate
|
|
9072
|
-
* [`baseURL`](https://playwright.dev/docs/api/class-browser#browser-new-context-option-base-url)
|
|
9073
|
-
* options
|
|
9071
|
+
* @param url A glob pattern, regex pattern, or predicate that receives a [URL] to match during routing. If
|
|
9072
|
+
* [`baseURL`](https://playwright.dev/docs/api/class-browser#browser-new-context-option-base-url) is set in the
|
|
9073
|
+
* context options and the provided URL is a string that does not start with `*`, it is resolved using the
|
|
9074
9074
|
* [`new URL()`](https://developer.mozilla.org/en-US/docs/Web/API/URL/URL) constructor.
|
|
9075
9075
|
* @param handler handler function to route the request.
|
|
9076
9076
|
* @param options
|
|
@@ -9274,9 +9274,6 @@ export interface BrowserContext {
|
|
|
9274
9274
|
* Set to `true` to include [IndexedDB](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API) in the storage
|
|
9275
9275
|
* state snapshot. If your application uses IndexedDB to store authentication tokens, like Firebase Authentication,
|
|
9276
9276
|
* enable this.
|
|
9277
|
-
*
|
|
9278
|
-
* **NOTE** IndexedDBs with typed arrays are currently not supported.
|
|
9279
|
-
*
|
|
9280
9277
|
*/
|
|
9281
9278
|
indexedDB?: boolean;
|
|
9282
9279
|
|
|
@@ -12481,6 +12478,12 @@ export interface Locator {
|
|
|
12481
12478
|
* @param options
|
|
12482
12479
|
*/
|
|
12483
12480
|
ariaSnapshot(options?: {
|
|
12481
|
+
/**
|
|
12482
|
+
* Generate symbolic reference for each element. One can use `aria-ref=<ref>` locator immediately after capturing the
|
|
12483
|
+
* snapshot to perform actions on the element.
|
|
12484
|
+
*/
|
|
12485
|
+
ref?: boolean;
|
|
12486
|
+
|
|
12484
12487
|
/**
|
|
12485
12488
|
* Maximum time in milliseconds. Defaults to `0` - no timeout. The default value can be changed via `actionTimeout`
|
|
12486
12489
|
* option in the config, or by using the
|
|
@@ -14704,11 +14707,15 @@ export interface BrowserType<Unused = {}> {
|
|
|
14704
14707
|
* Launches browser that uses persistent storage located at
|
|
14705
14708
|
* [`userDataDir`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context-option-user-data-dir)
|
|
14706
14709
|
* and returns the only context. Closing this context will automatically close the browser.
|
|
14707
|
-
* @param userDataDir Path to a User Data Directory, which stores browser session data like cookies and local storage.
|
|
14710
|
+
* @param userDataDir Path to a User Data Directory, which stores browser session data like cookies and local storage. Pass an empty
|
|
14711
|
+
* string to create a temporary directory.
|
|
14712
|
+
*
|
|
14713
|
+
* More details for
|
|
14708
14714
|
* [Chromium](https://chromium.googlesource.com/chromium/src/+/master/docs/user_data_dir.md#introduction) and
|
|
14709
|
-
* [Firefox](https://
|
|
14710
|
-
*
|
|
14711
|
-
*
|
|
14715
|
+
* [Firefox](https://wiki.mozilla.org/Firefox/CommandLineOptions#User_profile). Chromium's user data directory is the
|
|
14716
|
+
* **parent** directory of the "Profile Path" seen at `chrome://version`.
|
|
14717
|
+
*
|
|
14718
|
+
* Note that browsers do not allow launching multiple instances with the same User Data Directory.
|
|
14712
14719
|
* @param options
|
|
14713
14720
|
*/
|
|
14714
14721
|
launchPersistentContext(userDataDir: string, options?: {
|
|
@@ -14927,7 +14934,7 @@ export interface BrowserType<Unused = {}> {
|
|
|
14927
14934
|
/**
|
|
14928
14935
|
* Whether to run browser in headless mode. More details for
|
|
14929
14936
|
* [Chromium](https://developers.google.com/web/updates/2017/04/headless-chrome) and
|
|
14930
|
-
* [Firefox](https://
|
|
14937
|
+
* [Firefox](https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/). Defaults to `true` unless the
|
|
14931
14938
|
* [`devtools`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-option-devtools) option is
|
|
14932
14939
|
* `true`.
|
|
14933
14940
|
*/
|
|
@@ -15321,7 +15328,7 @@ export interface BrowserType<Unused = {}> {
|
|
|
15321
15328
|
/**
|
|
15322
15329
|
* Whether to run browser in headless mode. More details for
|
|
15323
15330
|
* [Chromium](https://developers.google.com/web/updates/2017/04/headless-chrome) and
|
|
15324
|
-
* [Firefox](https://
|
|
15331
|
+
* [Firefox](https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/). Defaults to `true` unless the
|
|
15325
15332
|
* [`devtools`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-option-devtools) option is
|
|
15326
15333
|
* `true`.
|
|
15327
15334
|
*/
|
|
@@ -17563,6 +17570,13 @@ export interface APIRequest {
|
|
|
17563
17570
|
*/
|
|
17564
17571
|
ignoreHTTPSErrors?: boolean;
|
|
17565
17572
|
|
|
17573
|
+
/**
|
|
17574
|
+
* Maximum number of request redirects that will be followed automatically. An error will be thrown if the number is
|
|
17575
|
+
* exceeded. Defaults to `20`. Pass `0` to not follow redirects. This can be overwritten for each request
|
|
17576
|
+
* individually.
|
|
17577
|
+
*/
|
|
17578
|
+
maxRedirects?: number;
|
|
17579
|
+
|
|
17566
17580
|
/**
|
|
17567
17581
|
* Network proxy settings.
|
|
17568
17582
|
*/
|
|
@@ -20769,6 +20783,11 @@ export interface Route {
|
|
|
20769
20783
|
* request to the network, other matching handlers won't be invoked. Use
|
|
20770
20784
|
* [route.fallback([options])](https://playwright.dev/docs/api/class-route#route-fallback) If you want next matching
|
|
20771
20785
|
* handler in the chain to be invoked.
|
|
20786
|
+
*
|
|
20787
|
+
* **NOTE** The `Cookie` header cannot be overridden using this method. If a value is provided, it will be ignored,
|
|
20788
|
+
* and the cookie will be loaded from the browser's cookie store. To set custom cookies, use
|
|
20789
|
+
* [browserContext.addCookies(cookies)](https://playwright.dev/docs/api/class-browsercontext#browser-context-add-cookies).
|
|
20790
|
+
*
|
|
20772
20791
|
* @param options
|
|
20773
20792
|
*/
|
|
20774
20793
|
continue(options?: {
|
|
@@ -21696,7 +21715,7 @@ export interface LaunchOptions {
|
|
|
21696
21715
|
/**
|
|
21697
21716
|
* Whether to run browser in headless mode. More details for
|
|
21698
21717
|
* [Chromium](https://developers.google.com/web/updates/2017/04/headless-chrome) and
|
|
21699
|
-
* [Firefox](https://
|
|
21718
|
+
* [Firefox](https://hacks.mozilla.org/2017/12/using-headless-mode-in-firefox/). Defaults to `true` unless the
|
|
21700
21719
|
* [`devtools`](https://playwright.dev/docs/api/class-browsertype#browser-type-launch-option-devtools) option is
|
|
21701
21720
|
* `true`.
|
|
21702
21721
|
*/
|
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.serializeAsCallArgument = exports.parseEvaluationResultValue = void 0;
|
|
7
|
-
exports.source = source;
|
|
8
|
-
/**
|
|
9
|
-
* Copyright (c) Microsoft Corporation.
|
|
10
|
-
*
|
|
11
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
12
|
-
* you may not use this file except in compliance with the License.
|
|
13
|
-
* You may obtain a copy of the License at
|
|
14
|
-
*
|
|
15
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
-
*
|
|
17
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
18
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
19
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
20
|
-
* See the License for the specific language governing permissions and
|
|
21
|
-
* limitations under the License.
|
|
22
|
-
*/
|
|
23
|
-
|
|
24
|
-
function source() {
|
|
25
|
-
function isRegExp(obj) {
|
|
26
|
-
try {
|
|
27
|
-
return obj instanceof RegExp || Object.prototype.toString.call(obj) === '[object RegExp]';
|
|
28
|
-
} catch (error) {
|
|
29
|
-
return false;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
function isDate(obj) {
|
|
33
|
-
try {
|
|
34
|
-
return obj instanceof Date || Object.prototype.toString.call(obj) === '[object Date]';
|
|
35
|
-
} catch (error) {
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
function isURL(obj) {
|
|
40
|
-
try {
|
|
41
|
-
return obj instanceof URL || Object.prototype.toString.call(obj) === '[object URL]';
|
|
42
|
-
} catch (error) {
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
function isError(obj) {
|
|
47
|
-
try {
|
|
48
|
-
var _Object$getPrototypeO;
|
|
49
|
-
return obj instanceof Error || obj && ((_Object$getPrototypeO = Object.getPrototypeOf(obj)) === null || _Object$getPrototypeO === void 0 ? void 0 : _Object$getPrototypeO.name) === 'Error';
|
|
50
|
-
} catch (error) {
|
|
51
|
-
return false;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
function parseEvaluationResultValue(value, handles = [], refs = new Map()) {
|
|
55
|
-
if (Object.is(value, undefined)) return undefined;
|
|
56
|
-
if (typeof value === 'object' && value) {
|
|
57
|
-
if ('ref' in value) return refs.get(value.ref);
|
|
58
|
-
if ('v' in value) {
|
|
59
|
-
if (value.v === 'undefined') return undefined;
|
|
60
|
-
if (value.v === 'null') return null;
|
|
61
|
-
if (value.v === 'NaN') return NaN;
|
|
62
|
-
if (value.v === 'Infinity') return Infinity;
|
|
63
|
-
if (value.v === '-Infinity') return -Infinity;
|
|
64
|
-
if (value.v === '-0') return -0;
|
|
65
|
-
return undefined;
|
|
66
|
-
}
|
|
67
|
-
if ('d' in value) return new Date(value.d);
|
|
68
|
-
if ('u' in value) return new URL(value.u);
|
|
69
|
-
if ('bi' in value) return BigInt(value.bi);
|
|
70
|
-
if ('e' in value) {
|
|
71
|
-
const error = new Error(value.e.m);
|
|
72
|
-
error.name = value.e.n;
|
|
73
|
-
error.stack = value.e.s;
|
|
74
|
-
return error;
|
|
75
|
-
}
|
|
76
|
-
if ('r' in value) return new RegExp(value.r.p, value.r.f);
|
|
77
|
-
if ('a' in value) {
|
|
78
|
-
const result = [];
|
|
79
|
-
refs.set(value.id, result);
|
|
80
|
-
for (const a of value.a) result.push(parseEvaluationResultValue(a, handles, refs));
|
|
81
|
-
return result;
|
|
82
|
-
}
|
|
83
|
-
if ('o' in value) {
|
|
84
|
-
const result = {};
|
|
85
|
-
refs.set(value.id, result);
|
|
86
|
-
for (const {
|
|
87
|
-
k,
|
|
88
|
-
v
|
|
89
|
-
} of value.o) result[k] = parseEvaluationResultValue(v, handles, refs);
|
|
90
|
-
return result;
|
|
91
|
-
}
|
|
92
|
-
if ('h' in value) return handles[value.h];
|
|
93
|
-
}
|
|
94
|
-
return value;
|
|
95
|
-
}
|
|
96
|
-
function serializeAsCallArgument(value, handleSerializer) {
|
|
97
|
-
return serialize(value, handleSerializer, {
|
|
98
|
-
visited: new Map(),
|
|
99
|
-
lastId: 0
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
function serialize(value, handleSerializer, visitorInfo) {
|
|
103
|
-
if (value && typeof value === 'object') {
|
|
104
|
-
// eslint-disable-next-line no-restricted-globals
|
|
105
|
-
if (typeof globalThis.Window === 'function' && value instanceof globalThis.Window) return 'ref: <Window>';
|
|
106
|
-
// eslint-disable-next-line no-restricted-globals
|
|
107
|
-
if (typeof globalThis.Document === 'function' && value instanceof globalThis.Document) return 'ref: <Document>';
|
|
108
|
-
// eslint-disable-next-line no-restricted-globals
|
|
109
|
-
if (typeof globalThis.Node === 'function' && value instanceof globalThis.Node) return 'ref: <Node>';
|
|
110
|
-
}
|
|
111
|
-
return innerSerialize(value, handleSerializer, visitorInfo);
|
|
112
|
-
}
|
|
113
|
-
function innerSerialize(value, handleSerializer, visitorInfo) {
|
|
114
|
-
const result = handleSerializer(value);
|
|
115
|
-
if ('fallThrough' in result) value = result.fallThrough;else return result;
|
|
116
|
-
if (typeof value === 'symbol') return {
|
|
117
|
-
v: 'undefined'
|
|
118
|
-
};
|
|
119
|
-
if (Object.is(value, undefined)) return {
|
|
120
|
-
v: 'undefined'
|
|
121
|
-
};
|
|
122
|
-
if (Object.is(value, null)) return {
|
|
123
|
-
v: 'null'
|
|
124
|
-
};
|
|
125
|
-
if (Object.is(value, NaN)) return {
|
|
126
|
-
v: 'NaN'
|
|
127
|
-
};
|
|
128
|
-
if (Object.is(value, Infinity)) return {
|
|
129
|
-
v: 'Infinity'
|
|
130
|
-
};
|
|
131
|
-
if (Object.is(value, -Infinity)) return {
|
|
132
|
-
v: '-Infinity'
|
|
133
|
-
};
|
|
134
|
-
if (Object.is(value, -0)) return {
|
|
135
|
-
v: '-0'
|
|
136
|
-
};
|
|
137
|
-
if (typeof value === 'boolean') return value;
|
|
138
|
-
if (typeof value === 'number') return value;
|
|
139
|
-
if (typeof value === 'string') return value;
|
|
140
|
-
if (typeof value === 'bigint') return {
|
|
141
|
-
bi: value.toString()
|
|
142
|
-
};
|
|
143
|
-
if (isError(value)) {
|
|
144
|
-
var _value$stack;
|
|
145
|
-
let stack;
|
|
146
|
-
if ((_value$stack = value.stack) !== null && _value$stack !== void 0 && _value$stack.startsWith(value.name + ': ' + value.message)) {
|
|
147
|
-
// v8
|
|
148
|
-
stack = value.stack;
|
|
149
|
-
} else {
|
|
150
|
-
stack = `${value.name}: ${value.message}\n${value.stack}`;
|
|
151
|
-
}
|
|
152
|
-
return {
|
|
153
|
-
e: {
|
|
154
|
-
n: value.name,
|
|
155
|
-
m: value.message,
|
|
156
|
-
s: stack
|
|
157
|
-
}
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
if (isDate(value)) return {
|
|
161
|
-
d: value.toJSON()
|
|
162
|
-
};
|
|
163
|
-
if (isURL(value)) return {
|
|
164
|
-
u: value.toJSON()
|
|
165
|
-
};
|
|
166
|
-
if (isRegExp(value)) return {
|
|
167
|
-
r: {
|
|
168
|
-
p: value.source,
|
|
169
|
-
f: value.flags
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
const id = visitorInfo.visited.get(value);
|
|
173
|
-
if (id) return {
|
|
174
|
-
ref: id
|
|
175
|
-
};
|
|
176
|
-
if (Array.isArray(value)) {
|
|
177
|
-
const a = [];
|
|
178
|
-
const id = ++visitorInfo.lastId;
|
|
179
|
-
visitorInfo.visited.set(value, id);
|
|
180
|
-
for (let i = 0; i < value.length; ++i) a.push(serialize(value[i], handleSerializer, visitorInfo));
|
|
181
|
-
return {
|
|
182
|
-
a,
|
|
183
|
-
id
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
if (typeof value === 'object') {
|
|
187
|
-
const o = [];
|
|
188
|
-
const id = ++visitorInfo.lastId;
|
|
189
|
-
visitorInfo.visited.set(value, id);
|
|
190
|
-
for (const name of Object.keys(value)) {
|
|
191
|
-
let item;
|
|
192
|
-
try {
|
|
193
|
-
item = value[name];
|
|
194
|
-
} catch (e) {
|
|
195
|
-
continue; // native bindings will throw sometimes
|
|
196
|
-
}
|
|
197
|
-
if (name === 'toJSON' && typeof item === 'function') o.push({
|
|
198
|
-
k: name,
|
|
199
|
-
v: {
|
|
200
|
-
o: [],
|
|
201
|
-
id: 0
|
|
202
|
-
}
|
|
203
|
-
});else o.push({
|
|
204
|
-
k: name,
|
|
205
|
-
v: serialize(item, handleSerializer, visitorInfo)
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
let jsonWrapper;
|
|
209
|
-
try {
|
|
210
|
-
// If Object.keys().length === 0 we fall back to toJSON if it exists
|
|
211
|
-
if (o.length === 0 && value.toJSON && typeof value.toJSON === 'function') jsonWrapper = {
|
|
212
|
-
value: value.toJSON()
|
|
213
|
-
};
|
|
214
|
-
} catch (e) {}
|
|
215
|
-
if (jsonWrapper) return innerSerialize(jsonWrapper.value, handleSerializer, visitorInfo);
|
|
216
|
-
return {
|
|
217
|
-
o,
|
|
218
|
-
id
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
return {
|
|
223
|
-
parseEvaluationResultValue,
|
|
224
|
-
serializeAsCallArgument
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
const result = source();
|
|
228
|
-
const parseEvaluationResultValue = exports.parseEvaluationResultValue = result.parseEvaluationResultValue;
|
|
229
|
-
const serializeAsCallArgument = exports.serializeAsCallArgument = result.serializeAsCallArgument;
|