patchright-core 1.52.5 → 1.55.1
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/ThirdPartyNotices.txt +65 -123
- package/bin/reinstall_chrome_beta_mac.sh +1 -1
- package/bin/reinstall_chrome_stable_mac.sh +1 -1
- package/bin/reinstall_msedge_beta_mac.sh +1 -1
- package/bin/reinstall_msedge_dev_mac.sh +1 -1
- package/bin/reinstall_msedge_stable_mac.sh +1 -1
- package/browsers.json +14 -14
- package/index.js +1 -1
- package/lib/androidServerImpl.js +4 -2
- package/lib/browserServerImpl.js +47 -12
- package/lib/cli/program.js +116 -50
- package/lib/cli/programWithTestStub.js +1 -1
- package/lib/client/android.js +30 -34
- package/lib/client/browser.js +54 -17
- package/lib/client/browserContext.js +67 -71
- package/lib/client/browserType.js +25 -34
- package/lib/client/channelOwner.js +20 -24
- package/lib/client/connection.js +6 -10
- package/lib/client/electron.js +8 -3
- package/lib/client/elementHandle.js +18 -21
- package/lib/client/fetch.js +5 -3
- package/lib/client/frame.js +54 -32
- package/lib/client/input.js +3 -1
- package/lib/client/jsHandle.js +4 -0
- package/lib/client/localUtils.js +0 -1
- package/lib/client/locator.js +30 -26
- package/lib/client/network.js +5 -12
- package/lib/client/page.js +32 -32
- package/lib/client/playwright.js +6 -16
- package/lib/client/selectors.js +18 -38
- package/lib/client/timeoutSettings.js +12 -8
- package/lib/client/tracing.js +24 -20
- package/lib/client/waiter.js +2 -2
- package/lib/client/webSocket.js +4 -22
- package/lib/generated/bindingsControllerSource.js +28 -0
- package/lib/generated/clockSource.js +1 -1
- package/lib/generated/injectedScriptSource.js +1 -1
- package/lib/generated/pollingRecorderSource.js +1 -1
- package/lib/generated/storageScriptSource.js +28 -0
- package/lib/generated/utilityScriptSource.js +1 -1
- package/lib/generated/webSocketMockSource.js +12 -50
- package/lib/inProcessFactory.js +9 -6
- package/lib/outofprocess.js +0 -2
- package/lib/protocol/validator.js +421 -345
- package/lib/protocol/validatorPrimitives.js +18 -4
- package/lib/remote/playwrightConnection.js +29 -166
- package/lib/remote/playwrightServer.js +233 -35
- package/lib/server/android/android.js +97 -83
- package/lib/server/android/backendAdb.js +0 -2
- package/lib/server/bidi/bidiBrowser.js +139 -73
- package/lib/server/bidi/bidiChromium.js +23 -22
- package/lib/server/bidi/bidiExecutionContext.js +2 -1
- package/lib/server/bidi/bidiFirefox.js +17 -14
- package/lib/server/bidi/bidiInput.js +22 -22
- package/lib/server/bidi/bidiNetworkManager.js +8 -11
- package/lib/server/bidi/bidiPage.js +42 -86
- package/lib/server/bidi/third_party/bidiProtocol.js +5 -133
- package/lib/server/bidi/third_party/bidiProtocolCore.js +179 -0
- package/lib/server/{dispatchers/selectorsDispatcher.js → bidi/third_party/bidiProtocolPermissions.js} +20 -18
- package/lib/server/browser.js +30 -21
- package/lib/server/browserContext.js +203 -165
- package/lib/server/browserType.js +109 -107
- package/lib/server/chromium/chromium.js +84 -69
- package/lib/server/chromium/chromiumSwitches.js +13 -20
- package/lib/server/chromium/crBrowser.js +74 -40
- package/lib/server/chromium/crConnection.js +8 -9
- package/lib/server/chromium/crCoverage.js +11 -8
- package/lib/server/chromium/crDragDrop.js +25 -20
- package/lib/server/chromium/crExecutionContext.js +2 -1
- package/lib/server/chromium/crInput.js +32 -29
- package/lib/server/chromium/crNetworkManager.js +43 -31
- package/lib/server/chromium/crPage.js +98 -72
- package/lib/server/chromium/crServiceWorker.js +13 -18
- package/lib/server/chromium/videoRecorder.js +10 -18
- package/lib/server/clock.js +51 -39
- package/lib/server/codegen/csharp.js +10 -5
- package/lib/server/codegen/java.js +1 -1
- package/lib/server/codegen/javascript.js +1 -1
- package/lib/server/codegen/jsonl.js +2 -1
- package/lib/server/codegen/language.js +22 -1
- package/lib/server/codegen/languages.js +4 -4
- package/lib/server/codegen/python.js +1 -1
- package/lib/server/cookieStore.js +3 -1
- package/lib/server/debugController.js +105 -71
- package/lib/server/debugger.js +6 -23
- package/lib/server/deviceDescriptorsSource.json +237 -127
- package/lib/server/dialog.js +50 -6
- package/lib/server/dispatchers/androidDispatcher.js +77 -62
- package/lib/server/dispatchers/artifactDispatcher.js +18 -18
- package/lib/server/dispatchers/browserContextDispatcher.js +141 -91
- package/lib/server/dispatchers/browserDispatcher.js +55 -88
- package/lib/server/dispatchers/browserTypeDispatcher.js +18 -9
- package/lib/server/dispatchers/cdpSessionDispatcher.js +4 -4
- package/lib/server/dispatchers/debugControllerDispatcher.js +12 -21
- package/lib/server/dispatchers/dialogDispatcher.js +4 -4
- package/lib/server/dispatchers/dispatcher.js +78 -53
- package/lib/server/dispatchers/electronDispatcher.js +19 -20
- package/lib/server/dispatchers/elementHandlerDispatcher.js +83 -93
- package/lib/server/dispatchers/frameDispatcher.js +98 -101
- package/lib/server/dispatchers/jsHandleDispatcher.js +21 -16
- package/lib/server/dispatchers/jsonPipeDispatcher.js +4 -4
- package/lib/server/dispatchers/localUtilsDispatcher.js +53 -59
- package/lib/server/dispatchers/networkDispatchers.js +41 -35
- package/lib/server/dispatchers/pageDispatcher.js +156 -107
- package/lib/server/dispatchers/playwrightDispatcher.js +37 -25
- package/lib/server/dispatchers/streamDispatcher.js +15 -8
- package/lib/server/dispatchers/tracingDispatcher.js +22 -13
- package/lib/server/dispatchers/webSocketRouteDispatcher.js +46 -35
- package/lib/server/dispatchers/writableStreamDispatcher.js +16 -10
- package/lib/server/dom.js +198 -266
- package/lib/server/download.js +3 -3
- package/lib/server/electron/electron.js +96 -103
- package/lib/server/electron/loader.js +1 -1
- package/lib/server/fetch.js +22 -41
- package/lib/server/fileUploadUtils.js +1 -1
- package/lib/server/firefox/ffBrowser.js +79 -55
- package/lib/server/firefox/ffExecutionContext.js +2 -1
- package/lib/server/firefox/ffInput.js +23 -23
- package/lib/server/firefox/ffNetworkManager.js +8 -6
- package/lib/server/firefox/ffPage.js +39 -36
- package/lib/server/firefox/firefox.js +9 -10
- package/lib/server/frameSelectors.js +63 -20
- package/lib/server/frames.js +495 -555
- package/lib/server/har/harRecorder.js +1 -1
- package/lib/server/har/harTracer.js +4 -2
- package/lib/server/helper.js +3 -7
- package/lib/server/index.js +0 -3
- package/lib/server/input.js +47 -54
- package/lib/server/instrumentation.js +8 -14
- package/lib/server/javascript.js +8 -16
- package/lib/server/launchApp.js +48 -30
- package/lib/server/localUtils.js +45 -38
- package/lib/server/network.js +44 -10
- package/lib/server/page.js +232 -177
- package/lib/server/pageBinding.js +6 -7
- package/lib/server/playwright.js +4 -14
- package/lib/server/progress.js +57 -49
- package/lib/server/recorder/recorderApp.js +298 -95
- package/lib/server/recorder/recorderRunner.js +23 -24
- package/lib/server/recorder/recorderSignalProcessor.js +83 -0
- package/lib/server/recorder/recorderUtils.js +67 -10
- package/lib/server/recorder.js +284 -146
- package/lib/server/registry/index.js +83 -48
- package/lib/server/registry/nativeDeps.js +175 -0
- package/lib/server/registry/oopDownloadBrowserMain.js +1 -1
- package/lib/server/screenshotter.js +84 -83
- package/lib/server/selectors.js +12 -12
- package/lib/server/socksClientCertificatesInterceptor.js +198 -136
- package/lib/server/trace/recorder/snapshotter.js +12 -19
- package/lib/server/trace/recorder/tracing.js +36 -27
- package/lib/server/trace/viewer/traceViewer.js +11 -20
- package/lib/server/transport.js +20 -22
- package/lib/server/utils/comparators.js +2 -2
- package/lib/server/utils/debug.js +3 -8
- package/lib/server/utils/debugLogger.js +8 -0
- package/lib/server/utils/hostPlatform.js +3 -1
- package/lib/server/utils/network.js +35 -25
- package/lib/server/utils/nodePlatform.js +1 -1
- package/lib/server/utils/processLauncher.js +4 -1
- package/lib/server/utils/wsServer.js +11 -17
- package/lib/server/webkit/webkit.js +5 -2
- package/lib/server/webkit/wkBrowser.js +51 -28
- package/lib/server/webkit/wkExecutionContext.js +2 -1
- package/lib/server/webkit/wkInput.js +25 -25
- package/lib/server/webkit/wkInterceptableRequest.js +1 -1
- package/lib/server/webkit/wkPage.js +80 -59
- package/lib/server/webkit/wkProvisionalPage.js +1 -1
- package/lib/server/webkit/wkWorkers.js +7 -7
- package/lib/utils/isomorphic/ariaSnapshot.js +13 -7
- package/lib/utils/isomorphic/cssParser.js +1 -2
- package/lib/utils/isomorphic/locatorGenerators.js +18 -0
- package/lib/utils/isomorphic/manualPromise.js +1 -2
- package/lib/utils/isomorphic/mimeType.js +1 -2
- package/lib/utils/isomorphic/multimap.js +1 -2
- package/lib/utils/isomorphic/oldUtilityScriptSerializers.js +248 -0
- package/lib/utils/isomorphic/protocolFormatter.js +78 -0
- package/lib/utils/isomorphic/protocolMetainfo.js +318 -0
- package/lib/utils/isomorphic/selectorParser.js +3 -4
- package/lib/utils/isomorphic/stringUtils.js +3 -24
- package/lib/utils/isomorphic/time.js +9 -4
- package/lib/utils/isomorphic/timeoutRunner.js +3 -4
- package/lib/utils/isomorphic/traceUtils.js +2 -3
- package/lib/utils/isomorphic/urlMatch.js +21 -7
- package/lib/utils/isomorphic/utilityScriptSerializers.js +208 -205
- package/lib/utils.js +8 -2
- package/lib/utilsBundleImpl/index.js +160 -150
- package/lib/vite/htmlReport/index.html +17 -17
- package/lib/vite/recorder/assets/{codeMirrorModule-CXVeovup.js → codeMirrorModule-DzQ0k89p.js} +1 -1
- package/lib/vite/recorder/assets/{index-eHBmevrY.css → index-CI4HQ-Zb.css} +1 -1
- package/lib/vite/recorder/assets/index-D7C7daHH.js +184 -0
- package/lib/vite/recorder/index.html +3 -3
- package/lib/vite/traceViewer/assets/{codeMirrorModule-_GLjJL-7.js → codeMirrorModule-Di48jgWx.js} +1 -1
- package/lib/vite/traceViewer/assets/defaultSettingsView-szBn8781.js +256 -0
- package/lib/vite/traceViewer/defaultSettingsView.DVJHpiGt.css +1 -0
- package/lib/vite/traceViewer/index.BFsek2M6.css +1 -0
- package/lib/vite/traceViewer/index.DQvXoPLL.js +2 -0
- package/lib/vite/traceViewer/index.html +6 -6
- package/lib/vite/traceViewer/sw.bundle.js +3 -3
- package/lib/vite/traceViewer/uiMode.dBV3oN9h.js +5 -0
- package/lib/vite/traceViewer/uiMode.html +4 -4
- package/lib/zipBundleImpl.js +4 -4
- package/package.json +1 -1
- package/types/protocol.d.ts +712 -107
- package/types/types.d.ts +128 -17
- package/lib/generated/consoleApiSource.js +0 -28
- package/lib/protocol/debug.js +0 -211
- package/lib/server/recorder/contextRecorder.js +0 -286
- package/lib/server/recorder/recorderCollection.js +0 -116
- package/lib/server/recorder/recorderFrontend.js +0 -16
- package/lib/server/storageScript.js +0 -154
- package/lib/server/timeoutSettings.js +0 -89
- package/lib/utils/isomorphic/builtins.js +0 -86
- package/lib/vite/recorder/assets/index-BsWQsSGl.js +0 -184
- package/lib/vite/traceViewer/assets/defaultSettingsView-DtCQiGHe.js +0 -265
- package/lib/vite/traceViewer/defaultSettingsView.QdHITyLI.css +0 -1
- package/lib/vite/traceViewer/index.CFOW-Ezb.css +0 -1
- package/lib/vite/traceViewer/index.cFZzK9RN.js +0 -2
- package/lib/vite/traceViewer/uiMode.XVPIqBeS.js +0 -5
|
@@ -0,0 +1,318 @@
|
|
|
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 protocolMetainfo_exports = {};
|
|
20
|
+
__export(protocolMetainfo_exports, {
|
|
21
|
+
methodMetainfo: () => methodMetainfo
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(protocolMetainfo_exports);
|
|
24
|
+
const methodMetainfo = /* @__PURE__ */ new Map([
|
|
25
|
+
["APIRequestContext.fetch", { title: '{method} "{url}"' }],
|
|
26
|
+
["APIRequestContext.fetchResponseBody", { title: "Get response body", group: "getter" }],
|
|
27
|
+
["APIRequestContext.fetchLog", { internal: true }],
|
|
28
|
+
["APIRequestContext.storageState", { title: "Get storage state" }],
|
|
29
|
+
["APIRequestContext.disposeAPIResponse", { internal: true }],
|
|
30
|
+
["APIRequestContext.dispose", { internal: true }],
|
|
31
|
+
["LocalUtils.zip", { internal: true }],
|
|
32
|
+
["LocalUtils.harOpen", { internal: true }],
|
|
33
|
+
["LocalUtils.harLookup", { internal: true }],
|
|
34
|
+
["LocalUtils.harClose", { internal: true }],
|
|
35
|
+
["LocalUtils.harUnzip", { internal: true }],
|
|
36
|
+
["LocalUtils.connect", { internal: true }],
|
|
37
|
+
["LocalUtils.tracingStarted", { internal: true }],
|
|
38
|
+
["LocalUtils.addStackToTracingNoReply", { internal: true }],
|
|
39
|
+
["LocalUtils.traceDiscarded", { internal: true }],
|
|
40
|
+
["LocalUtils.globToRegex", { internal: true }],
|
|
41
|
+
["Root.initialize", { internal: true }],
|
|
42
|
+
["Playwright.newRequest", { title: "Create request context" }],
|
|
43
|
+
["DebugController.initialize", { internal: true }],
|
|
44
|
+
["DebugController.setReportStateChanged", { internal: true }],
|
|
45
|
+
["DebugController.setRecorderMode", { internal: true }],
|
|
46
|
+
["DebugController.highlight", { internal: true }],
|
|
47
|
+
["DebugController.hideHighlight", { internal: true }],
|
|
48
|
+
["DebugController.resume", { internal: true }],
|
|
49
|
+
["DebugController.kill", { internal: true }],
|
|
50
|
+
["SocksSupport.socksConnected", { internal: true }],
|
|
51
|
+
["SocksSupport.socksFailed", { internal: true }],
|
|
52
|
+
["SocksSupport.socksData", { internal: true }],
|
|
53
|
+
["SocksSupport.socksError", { internal: true }],
|
|
54
|
+
["SocksSupport.socksEnd", { internal: true }],
|
|
55
|
+
["BrowserType.launch", { title: "Launch browser" }],
|
|
56
|
+
["BrowserType.launchPersistentContext", { title: "Launch persistent context" }],
|
|
57
|
+
["BrowserType.connectOverCDP", { title: "Connect over CDP" }],
|
|
58
|
+
["Browser.close", { title: "Close browser", pausesBeforeAction: true }],
|
|
59
|
+
["Browser.killForTests", { internal: true }],
|
|
60
|
+
["Browser.defaultUserAgentForTest", { internal: true }],
|
|
61
|
+
["Browser.newContext", { title: "Create context" }],
|
|
62
|
+
["Browser.newContextForReuse", { internal: true }],
|
|
63
|
+
["Browser.disconnectFromReusedContext", { internal: true }],
|
|
64
|
+
["Browser.newBrowserCDPSession", { title: "Create CDP session", group: "configuration" }],
|
|
65
|
+
["Browser.startTracing", { title: "Start browser tracing", group: "configuration" }],
|
|
66
|
+
["Browser.stopTracing", { title: "Stop browser tracing", group: "configuration" }],
|
|
67
|
+
["EventTarget.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
68
|
+
["BrowserContext.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
69
|
+
["Page.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
70
|
+
["WebSocket.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
71
|
+
["ElectronApplication.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
72
|
+
["AndroidDevice.waitForEventInfo", { title: 'Wait for event "{info.event}"', snapshot: true }],
|
|
73
|
+
["BrowserContext.addCookies", { title: "Add cookies", group: "configuration" }],
|
|
74
|
+
["BrowserContext.addInitScript", { title: "Add init script", group: "configuration" }],
|
|
75
|
+
["BrowserContext.clearCookies", { title: "Clear cookies", group: "configuration" }],
|
|
76
|
+
["BrowserContext.clearPermissions", { title: "Clear permissions", group: "configuration" }],
|
|
77
|
+
["BrowserContext.close", { title: "Close context", pausesBeforeAction: true }],
|
|
78
|
+
["BrowserContext.cookies", { title: "Get cookies", group: "getter" }],
|
|
79
|
+
["BrowserContext.exposeBinding", { title: "Expose binding", group: "configuration" }],
|
|
80
|
+
["BrowserContext.grantPermissions", { title: "Grant permissions", group: "configuration" }],
|
|
81
|
+
["BrowserContext.newPage", { title: "Create page" }],
|
|
82
|
+
["BrowserContext.registerSelectorEngine", { internal: true }],
|
|
83
|
+
["BrowserContext.setTestIdAttributeName", { internal: true }],
|
|
84
|
+
["BrowserContext.setExtraHTTPHeaders", { title: "Set extra HTTP headers", group: "configuration" }],
|
|
85
|
+
["BrowserContext.setGeolocation", { title: "Set geolocation", group: "configuration" }],
|
|
86
|
+
["BrowserContext.setHTTPCredentials", { title: "Set HTTP credentials", group: "configuration" }],
|
|
87
|
+
["BrowserContext.setNetworkInterceptionPatterns", { title: "Route requests", group: "route" }],
|
|
88
|
+
["BrowserContext.setWebSocketInterceptionPatterns", { title: "Route WebSockets", group: "route" }],
|
|
89
|
+
["BrowserContext.setOffline", { title: "Set offline mode" }],
|
|
90
|
+
["BrowserContext.storageState", { title: "Get storage state" }],
|
|
91
|
+
["BrowserContext.pause", { title: "Pause" }],
|
|
92
|
+
["BrowserContext.enableRecorder", { internal: true }],
|
|
93
|
+
["BrowserContext.disableRecorder", { internal: true }],
|
|
94
|
+
["BrowserContext.newCDPSession", { title: "Create CDP session", group: "configuration" }],
|
|
95
|
+
["BrowserContext.harStart", { internal: true }],
|
|
96
|
+
["BrowserContext.harExport", { internal: true }],
|
|
97
|
+
["BrowserContext.createTempFiles", { internal: true }],
|
|
98
|
+
["BrowserContext.updateSubscription", { internal: true }],
|
|
99
|
+
["BrowserContext.clockFastForward", { title: 'Fast forward clock "{ticksNumber|ticksString}"' }],
|
|
100
|
+
["BrowserContext.clockInstall", { title: 'Install clock "{timeNumber|timeString}"' }],
|
|
101
|
+
["BrowserContext.clockPauseAt", { title: 'Pause clock "{timeNumber|timeString}"' }],
|
|
102
|
+
["BrowserContext.clockResume", { title: "Resume clock" }],
|
|
103
|
+
["BrowserContext.clockRunFor", { title: 'Run clock "{ticksNumber|ticksString}"' }],
|
|
104
|
+
["BrowserContext.clockSetFixedTime", { title: 'Set fixed time "{timeNumber|timeString}"' }],
|
|
105
|
+
["BrowserContext.clockSetSystemTime", { title: 'Set system time "{timeNumber|timeString}"' }],
|
|
106
|
+
["Page.addInitScript", { title: "Add init script", group: "configuration" }],
|
|
107
|
+
["Page.close", { title: "Close page", pausesBeforeAction: true }],
|
|
108
|
+
["Page.emulateMedia", { title: "Emulate media", snapshot: true, pausesBeforeAction: true }],
|
|
109
|
+
["Page.exposeBinding", { title: "Expose binding", group: "configuration" }],
|
|
110
|
+
["Page.goBack", { title: "Go back", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
111
|
+
["Page.goForward", { title: "Go forward", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
112
|
+
["Page.requestGC", { title: "Request garbage collection", group: "configuration" }],
|
|
113
|
+
["Page.registerLocatorHandler", { title: "Register locator handler" }],
|
|
114
|
+
["Page.resolveLocatorHandlerNoReply", { internal: true }],
|
|
115
|
+
["Page.unregisterLocatorHandler", { title: "Unregister locator handler" }],
|
|
116
|
+
["Page.reload", { title: "Reload", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
117
|
+
["Page.expectScreenshot", { title: "Expect screenshot", snapshot: true, pausesBeforeAction: true }],
|
|
118
|
+
["Page.screenshot", { title: "Screenshot", snapshot: true, pausesBeforeAction: true }],
|
|
119
|
+
["Page.setExtraHTTPHeaders", { title: "Set extra HTTP headers", group: "configuration" }],
|
|
120
|
+
["Page.setNetworkInterceptionPatterns", { title: "Route requests", group: "route" }],
|
|
121
|
+
["Page.setWebSocketInterceptionPatterns", { title: "Route WebSockets", group: "route" }],
|
|
122
|
+
["Page.setViewportSize", { title: "Set viewport size", snapshot: true, pausesBeforeAction: true }],
|
|
123
|
+
["Page.keyboardDown", { title: 'Key down "{key}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
124
|
+
["Page.keyboardUp", { title: 'Key up "{key}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
125
|
+
["Page.keyboardInsertText", { title: 'Insert "{text}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
126
|
+
["Page.keyboardType", { title: 'Type "{text}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
127
|
+
["Page.keyboardPress", { title: 'Press "{key}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
128
|
+
["Page.mouseMove", { title: "Mouse move", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
129
|
+
["Page.mouseDown", { title: "Mouse down", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
130
|
+
["Page.mouseUp", { title: "Mouse up", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
131
|
+
["Page.mouseClick", { title: "Click", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
132
|
+
["Page.mouseWheel", { title: "Mouse wheel", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
133
|
+
["Page.touchscreenTap", { title: "Tap", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
134
|
+
["Page.accessibilitySnapshot", { title: "Accessibility snapshot", group: "getter" }],
|
|
135
|
+
["Page.pdf", { title: "PDF" }],
|
|
136
|
+
["Page.snapshotForAI", { internal: true }],
|
|
137
|
+
["Page.startJSCoverage", { title: "Start JS coverage", group: "configuration" }],
|
|
138
|
+
["Page.stopJSCoverage", { title: "Stop JS coverage", group: "configuration" }],
|
|
139
|
+
["Page.startCSSCoverage", { title: "Start CSS coverage", group: "configuration" }],
|
|
140
|
+
["Page.stopCSSCoverage", { title: "Stop CSS coverage", group: "configuration" }],
|
|
141
|
+
["Page.bringToFront", { title: "Bring to front" }],
|
|
142
|
+
["Page.updateSubscription", { internal: true }],
|
|
143
|
+
["Frame.evalOnSelector", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
144
|
+
["Frame.evalOnSelectorAll", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
145
|
+
["Frame.addScriptTag", { title: "Add script tag", snapshot: true, pausesBeforeAction: true }],
|
|
146
|
+
["Frame.addStyleTag", { title: "Add style tag", snapshot: true, pausesBeforeAction: true }],
|
|
147
|
+
["Frame.ariaSnapshot", { title: "Aria snapshot", snapshot: true, pausesBeforeAction: true }],
|
|
148
|
+
["Frame.blur", { title: "Blur", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
149
|
+
["Frame.check", { title: "Check", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
150
|
+
["Frame.click", { title: "Click", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
151
|
+
["Frame.content", { title: "Get content", snapshot: true, pausesBeforeAction: true }],
|
|
152
|
+
["Frame.dragAndDrop", { title: "Drag and drop", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
153
|
+
["Frame.dblclick", { title: "Double click", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
154
|
+
["Frame.dispatchEvent", { title: 'Dispatch "{type}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
155
|
+
["Frame.evaluateExpression", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
156
|
+
["Frame.evaluateExpressionHandle", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
157
|
+
["Frame.fill", { title: 'Fill "{value}"', slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
158
|
+
["Frame.focus", { title: "Focus", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
159
|
+
["Frame.frameElement", { title: "Get frame element", group: "getter" }],
|
|
160
|
+
["Frame.resolveSelector", { internal: true }],
|
|
161
|
+
["Frame.highlight", { title: "Highlight element", group: "configuration" }],
|
|
162
|
+
["Frame.getAttribute", { title: 'Get attribute "{name}"', snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
163
|
+
["Frame.goto", { title: 'Navigate to "{url}"', slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
164
|
+
["Frame.hover", { title: "Hover", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
165
|
+
["Frame.innerHTML", { title: "Get HTML", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
166
|
+
["Frame.innerText", { title: "Get inner text", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
167
|
+
["Frame.inputValue", { title: "Get input value", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
168
|
+
["Frame.isChecked", { title: "Is checked", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
169
|
+
["Frame.isDisabled", { title: "Is disabled", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
170
|
+
["Frame.isEnabled", { title: "Is enabled", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
171
|
+
["Frame.isHidden", { title: "Is hidden", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
172
|
+
["Frame.isVisible", { title: "Is visible", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
173
|
+
["Frame.isEditable", { title: "Is editable", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
174
|
+
["Frame.press", { title: 'Press "{key}"', slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
175
|
+
["Frame.querySelector", { title: "Query selector", snapshot: true }],
|
|
176
|
+
["Frame.querySelectorAll", { title: "Query selector all", snapshot: true }],
|
|
177
|
+
["Frame.queryCount", { title: "Query count", snapshot: true, pausesBeforeAction: true }],
|
|
178
|
+
["Frame.selectOption", { title: "Select option", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
179
|
+
["Frame.setContent", { title: "Set content", snapshot: true, pausesBeforeAction: true }],
|
|
180
|
+
["Frame.setInputFiles", { title: "Set input files", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
181
|
+
["Frame.tap", { title: "Tap", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
182
|
+
["Frame.textContent", { title: "Get text content", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
183
|
+
["Frame.title", { title: "Get page title", group: "getter" }],
|
|
184
|
+
["Frame.type", { title: 'Type "{text}"', slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
185
|
+
["Frame.uncheck", { title: "Uncheck", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
186
|
+
["Frame.waitForTimeout", { title: "Wait for timeout", snapshot: true }],
|
|
187
|
+
["Frame.waitForFunction", { title: "Wait for function", snapshot: true, pausesBeforeAction: true }],
|
|
188
|
+
["Frame.waitForSelector", { title: "Wait for selector", snapshot: true }],
|
|
189
|
+
["Frame.expect", { title: 'Expect "{expression}"', snapshot: true, pausesBeforeAction: true }],
|
|
190
|
+
["Worker.evaluateExpression", { title: "Evaluate" }],
|
|
191
|
+
["Worker.evaluateExpressionHandle", { title: "Evaluate" }],
|
|
192
|
+
["JSHandle.dispose", { internal: true }],
|
|
193
|
+
["ElementHandle.dispose", { internal: true }],
|
|
194
|
+
["JSHandle.evaluateExpression", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
195
|
+
["ElementHandle.evaluateExpression", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
196
|
+
["JSHandle.evaluateExpressionHandle", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
197
|
+
["ElementHandle.evaluateExpressionHandle", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
198
|
+
["JSHandle.getPropertyList", { title: "Get property list", group: "getter" }],
|
|
199
|
+
["ElementHandle.getPropertyList", { title: "Get property list", group: "getter" }],
|
|
200
|
+
["JSHandle.getProperty", { title: "Get JS property", group: "getter" }],
|
|
201
|
+
["ElementHandle.getProperty", { title: "Get JS property", group: "getter" }],
|
|
202
|
+
["JSHandle.jsonValue", { title: "Get JSON value", group: "getter" }],
|
|
203
|
+
["ElementHandle.jsonValue", { title: "Get JSON value", group: "getter" }],
|
|
204
|
+
["ElementHandle.evalOnSelector", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
205
|
+
["ElementHandle.evalOnSelectorAll", { title: "Evaluate", snapshot: true, pausesBeforeAction: true }],
|
|
206
|
+
["ElementHandle.boundingBox", { title: "Get bounding box", snapshot: true, pausesBeforeAction: true }],
|
|
207
|
+
["ElementHandle.check", { title: "Check", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
208
|
+
["ElementHandle.click", { title: "Click", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
209
|
+
["ElementHandle.contentFrame", { title: "Get content frame", group: "getter" }],
|
|
210
|
+
["ElementHandle.dblclick", { title: "Double click", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
211
|
+
["ElementHandle.dispatchEvent", { title: "Dispatch event", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
212
|
+
["ElementHandle.fill", { title: 'Fill "{value}"', slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
213
|
+
["ElementHandle.focus", { title: "Focus", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
214
|
+
["ElementHandle.getAttribute", { title: "Get attribute", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
215
|
+
["ElementHandle.hover", { title: "Hover", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
216
|
+
["ElementHandle.innerHTML", { title: "Get HTML", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
217
|
+
["ElementHandle.innerText", { title: "Get inner text", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
218
|
+
["ElementHandle.inputValue", { title: "Get input value", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
219
|
+
["ElementHandle.isChecked", { title: "Is checked", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
220
|
+
["ElementHandle.isDisabled", { title: "Is disabled", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
221
|
+
["ElementHandle.isEditable", { title: "Is editable", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
222
|
+
["ElementHandle.isEnabled", { title: "Is enabled", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
223
|
+
["ElementHandle.isHidden", { title: "Is hidden", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
224
|
+
["ElementHandle.isVisible", { title: "Is visible", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
225
|
+
["ElementHandle.ownerFrame", { title: "Get owner frame", group: "getter" }],
|
|
226
|
+
["ElementHandle.press", { title: 'Press "{key}"', slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
227
|
+
["ElementHandle.querySelector", { title: "Query selector", snapshot: true }],
|
|
228
|
+
["ElementHandle.querySelectorAll", { title: "Query selector all", snapshot: true }],
|
|
229
|
+
["ElementHandle.screenshot", { title: "Screenshot", snapshot: true, pausesBeforeAction: true }],
|
|
230
|
+
["ElementHandle.scrollIntoViewIfNeeded", { title: "Scroll into view", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
231
|
+
["ElementHandle.selectOption", { title: "Select option", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
232
|
+
["ElementHandle.selectText", { title: "Select text", slowMo: true, snapshot: true, pausesBeforeAction: true }],
|
|
233
|
+
["ElementHandle.setInputFiles", { title: "Set input files", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
234
|
+
["ElementHandle.tap", { title: "Tap", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
235
|
+
["ElementHandle.textContent", { title: "Get text content", snapshot: true, pausesBeforeAction: true, group: "getter" }],
|
|
236
|
+
["ElementHandle.type", { title: "Type", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
237
|
+
["ElementHandle.uncheck", { title: "Uncheck", slowMo: true, snapshot: true, pausesBeforeInput: true }],
|
|
238
|
+
["ElementHandle.waitForElementState", { title: "Wait for state", snapshot: true, pausesBeforeAction: true }],
|
|
239
|
+
["ElementHandle.waitForSelector", { title: "Wait for selector", snapshot: true }],
|
|
240
|
+
["Request.response", { internal: true }],
|
|
241
|
+
["Request.rawRequestHeaders", { internal: true }],
|
|
242
|
+
["Route.redirectNavigationRequest", { internal: true }],
|
|
243
|
+
["Route.abort", { title: "Abort request", group: "route" }],
|
|
244
|
+
["Route.continue", { title: "Continue request", group: "route" }],
|
|
245
|
+
["Route.fulfill", { title: "Fulfill request", group: "route" }],
|
|
246
|
+
["WebSocketRoute.connect", { title: "Connect WebSocket to server", group: "route" }],
|
|
247
|
+
["WebSocketRoute.ensureOpened", { internal: true }],
|
|
248
|
+
["WebSocketRoute.sendToPage", { title: "Send WebSocket message", group: "route" }],
|
|
249
|
+
["WebSocketRoute.sendToServer", { title: "Send WebSocket message", group: "route" }],
|
|
250
|
+
["WebSocketRoute.closePage", { internal: true }],
|
|
251
|
+
["WebSocketRoute.closeServer", { internal: true }],
|
|
252
|
+
["Response.body", { title: "Get response body", group: "getter" }],
|
|
253
|
+
["Response.securityDetails", { internal: true }],
|
|
254
|
+
["Response.serverAddr", { internal: true }],
|
|
255
|
+
["Response.rawResponseHeaders", { internal: true }],
|
|
256
|
+
["Response.sizes", { internal: true }],
|
|
257
|
+
["BindingCall.reject", { internal: true }],
|
|
258
|
+
["BindingCall.resolve", { internal: true }],
|
|
259
|
+
["Dialog.accept", { title: "Accept dialog" }],
|
|
260
|
+
["Dialog.dismiss", { title: "Dismiss dialog" }],
|
|
261
|
+
["Tracing.tracingStart", { title: "Start tracing", group: "configuration" }],
|
|
262
|
+
["Tracing.tracingStartChunk", { title: "Start tracing", group: "configuration" }],
|
|
263
|
+
["Tracing.tracingGroup", { title: 'Trace "{name}"' }],
|
|
264
|
+
["Tracing.tracingGroupEnd", { title: "Group end" }],
|
|
265
|
+
["Tracing.tracingStopChunk", { title: "Stop tracing", group: "configuration" }],
|
|
266
|
+
["Tracing.tracingStop", { title: "Stop tracing", group: "configuration" }],
|
|
267
|
+
["Artifact.pathAfterFinished", { internal: true }],
|
|
268
|
+
["Artifact.saveAs", { internal: true }],
|
|
269
|
+
["Artifact.saveAsStream", { internal: true }],
|
|
270
|
+
["Artifact.failure", { internal: true }],
|
|
271
|
+
["Artifact.stream", { internal: true }],
|
|
272
|
+
["Artifact.cancel", { internal: true }],
|
|
273
|
+
["Artifact.delete", { internal: true }],
|
|
274
|
+
["Stream.read", { internal: true }],
|
|
275
|
+
["Stream.close", { internal: true }],
|
|
276
|
+
["WritableStream.write", { internal: true }],
|
|
277
|
+
["WritableStream.close", { internal: true }],
|
|
278
|
+
["CDPSession.send", { title: "Send CDP command", group: "configuration" }],
|
|
279
|
+
["CDPSession.detach", { title: "Detach CDP session", group: "configuration" }],
|
|
280
|
+
["Electron.launch", { title: "Launch electron" }],
|
|
281
|
+
["ElectronApplication.browserWindow", { internal: true }],
|
|
282
|
+
["ElectronApplication.evaluateExpression", { title: "Evaluate" }],
|
|
283
|
+
["ElectronApplication.evaluateExpressionHandle", { title: "Evaluate" }],
|
|
284
|
+
["ElectronApplication.updateSubscription", { internal: true }],
|
|
285
|
+
["Android.devices", { internal: true }],
|
|
286
|
+
["AndroidSocket.write", { internal: true }],
|
|
287
|
+
["AndroidSocket.close", { internal: true }],
|
|
288
|
+
["AndroidDevice.wait", { title: "Wait" }],
|
|
289
|
+
["AndroidDevice.fill", { title: 'Fill "{text}"' }],
|
|
290
|
+
["AndroidDevice.tap", { title: "Tap" }],
|
|
291
|
+
["AndroidDevice.drag", { title: "Drag" }],
|
|
292
|
+
["AndroidDevice.fling", { title: "Fling" }],
|
|
293
|
+
["AndroidDevice.longTap", { title: "Long tap" }],
|
|
294
|
+
["AndroidDevice.pinchClose", { title: "Pinch close" }],
|
|
295
|
+
["AndroidDevice.pinchOpen", { title: "Pinch open" }],
|
|
296
|
+
["AndroidDevice.scroll", { title: "Scroll" }],
|
|
297
|
+
["AndroidDevice.swipe", { title: "Swipe" }],
|
|
298
|
+
["AndroidDevice.info", { internal: true }],
|
|
299
|
+
["AndroidDevice.screenshot", { title: "Screenshot" }],
|
|
300
|
+
["AndroidDevice.inputType", { title: "Type" }],
|
|
301
|
+
["AndroidDevice.inputPress", { title: "Press" }],
|
|
302
|
+
["AndroidDevice.inputTap", { title: "Tap" }],
|
|
303
|
+
["AndroidDevice.inputSwipe", { title: "Swipe" }],
|
|
304
|
+
["AndroidDevice.inputDrag", { title: "Drag" }],
|
|
305
|
+
["AndroidDevice.launchBrowser", { title: "Launch browser" }],
|
|
306
|
+
["AndroidDevice.open", { title: "Open app" }],
|
|
307
|
+
["AndroidDevice.shell", { title: "Execute shell command", group: "configuration" }],
|
|
308
|
+
["AndroidDevice.installApk", { title: "Install apk" }],
|
|
309
|
+
["AndroidDevice.push", { title: "Push" }],
|
|
310
|
+
["AndroidDevice.connectToWebView", { title: "Connect to Web View" }],
|
|
311
|
+
["AndroidDevice.close", { internal: true }],
|
|
312
|
+
["JsonPipe.send", { internal: true }],
|
|
313
|
+
["JsonPipe.close", { internal: true }]
|
|
314
|
+
]);
|
|
315
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
316
|
+
0 && (module.exports = {
|
|
317
|
+
methodMetainfo
|
|
318
|
+
});
|
|
@@ -28,12 +28,11 @@ __export(selectorParser_exports, {
|
|
|
28
28
|
visitAllSelectorParts: () => visitAllSelectorParts
|
|
29
29
|
});
|
|
30
30
|
module.exports = __toCommonJS(selectorParser_exports);
|
|
31
|
-
var import_builtins = require("./builtins");
|
|
32
31
|
var import_cssParser = require("./cssParser");
|
|
33
32
|
var import_cssParser2 = require("./cssParser");
|
|
34
|
-
const kNestedSelectorNames = new
|
|
35
|
-
const kNestedSelectorNamesWithDistance = new
|
|
36
|
-
const customCSSNames = new
|
|
33
|
+
const kNestedSelectorNames = /* @__PURE__ */ new Set(["internal:has", "internal:has-not", "internal:and", "internal:or", "internal:chain", "left-of", "right-of", "above", "below", "near"]);
|
|
34
|
+
const kNestedSelectorNamesWithDistance = /* @__PURE__ */ new Set(["left-of", "right-of", "above", "below", "near"]);
|
|
35
|
+
const customCSSNames = /* @__PURE__ */ new Set(["not", "is", "where", "has", "scope", "light", "visible", "text", "text-matches", "text-is", "has-text", "above", "below", "right-of", "left-of", "near", "nth-match"]);
|
|
37
36
|
function parseSelector(selector) {
|
|
38
37
|
const parsedStrings = parseSelectorString(selector);
|
|
39
38
|
const parts = [];
|
|
@@ -19,7 +19,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
19
19
|
var stringUtils_exports = {};
|
|
20
20
|
__export(stringUtils_exports, {
|
|
21
21
|
cacheNormalizedWhitespaces: () => cacheNormalizedWhitespaces,
|
|
22
|
-
cssEscape: () => cssEscape,
|
|
23
22
|
escapeForAttributeSelector: () => escapeForAttributeSelector,
|
|
24
23
|
escapeForTextSelector: () => escapeForTextSelector,
|
|
25
24
|
escapeHTML: () => escapeHTML,
|
|
@@ -38,7 +37,6 @@ __export(stringUtils_exports, {
|
|
|
38
37
|
trimStringWithEllipsis: () => trimStringWithEllipsis
|
|
39
38
|
});
|
|
40
39
|
module.exports = __toCommonJS(stringUtils_exports);
|
|
41
|
-
var import_builtins = require("./builtins");
|
|
42
40
|
function escapeWithQuotes(text, char = "'") {
|
|
43
41
|
const stringified = JSON.stringify(text);
|
|
44
42
|
const escapedText = stringified.substring(1, stringified.length - 1).replace(/\\"/g, '"');
|
|
@@ -47,7 +45,7 @@ function escapeWithQuotes(text, char = "'") {
|
|
|
47
45
|
if (char === '"')
|
|
48
46
|
return char + escapedText.replace(/["]/g, '\\"') + char;
|
|
49
47
|
if (char === "`")
|
|
50
|
-
return char + escapedText.replace(/[`]/g, "
|
|
48
|
+
return char + escapedText.replace(/[`]/g, "\\`") + char;
|
|
51
49
|
throw new Error("Invalid escape char");
|
|
52
50
|
}
|
|
53
51
|
function escapeTemplateString(text) {
|
|
@@ -62,30 +60,12 @@ function toTitleCase(name) {
|
|
|
62
60
|
function toSnakeCase(name) {
|
|
63
61
|
return name.replace(/([a-z0-9])([A-Z])/g, "$1_$2").replace(/([A-Z])([A-Z][a-z])/g, "$1_$2").toLowerCase();
|
|
64
62
|
}
|
|
65
|
-
function cssEscape(s) {
|
|
66
|
-
let result = "";
|
|
67
|
-
for (let i = 0; i < s.length; i++)
|
|
68
|
-
result += cssEscapeOne(s, i);
|
|
69
|
-
return result;
|
|
70
|
-
}
|
|
71
63
|
function quoteCSSAttributeValue(text) {
|
|
72
|
-
return `"${
|
|
73
|
-
}
|
|
74
|
-
function cssEscapeOne(s, i) {
|
|
75
|
-
const c = s.charCodeAt(i);
|
|
76
|
-
if (c === 0)
|
|
77
|
-
return "\uFFFD";
|
|
78
|
-
if (c >= 1 && c <= 31 || c >= 48 && c <= 57 && (i === 0 || i === 1 && s.charCodeAt(0) === 45))
|
|
79
|
-
return "\\" + c.toString(16) + " ";
|
|
80
|
-
if (i === 0 && c === 45 && s.length === 1)
|
|
81
|
-
return "\\" + s.charAt(i);
|
|
82
|
-
if (c >= 128 || c === 45 || c === 95 || c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122)
|
|
83
|
-
return s.charAt(i);
|
|
84
|
-
return "\\" + s.charAt(i);
|
|
64
|
+
return `"${text.replace(/["\\]/g, (char) => "\\" + char)}"`;
|
|
85
65
|
}
|
|
86
66
|
let normalizedWhitespaceCache;
|
|
87
67
|
function cacheNormalizedWhitespaces() {
|
|
88
|
-
normalizedWhitespaceCache = new
|
|
68
|
+
normalizedWhitespaceCache = /* @__PURE__ */ new Map();
|
|
89
69
|
}
|
|
90
70
|
function normalizeWhiteSpace(text) {
|
|
91
71
|
let result = normalizedWhitespaceCache?.get(text);
|
|
@@ -156,7 +136,6 @@ function longestCommonSubstring(s1, s2) {
|
|
|
156
136
|
// Annotate the CommonJS export names for ESM import in node:
|
|
157
137
|
0 && (module.exports = {
|
|
158
138
|
cacheNormalizedWhitespaces,
|
|
159
|
-
cssEscape,
|
|
160
139
|
escapeForAttributeSelector,
|
|
161
140
|
escapeForTextSelector,
|
|
162
141
|
escapeHTML,
|
|
@@ -18,26 +18,31 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var time_exports = {};
|
|
20
20
|
__export(time_exports, {
|
|
21
|
+
DEFAULT_PLAYWRIGHT_LAUNCH_TIMEOUT: () => DEFAULT_PLAYWRIGHT_LAUNCH_TIMEOUT,
|
|
22
|
+
DEFAULT_PLAYWRIGHT_TIMEOUT: () => DEFAULT_PLAYWRIGHT_TIMEOUT,
|
|
21
23
|
monotonicTime: () => monotonicTime,
|
|
22
24
|
setTimeOrigin: () => setTimeOrigin,
|
|
23
25
|
timeOrigin: () => timeOrigin
|
|
24
26
|
});
|
|
25
27
|
module.exports = __toCommonJS(time_exports);
|
|
26
|
-
|
|
27
|
-
let _timeOrigin = import_builtins.performance.timeOrigin;
|
|
28
|
+
let _timeOrigin = performance.timeOrigin;
|
|
28
29
|
let _timeShift = 0;
|
|
29
30
|
function setTimeOrigin(origin) {
|
|
30
31
|
_timeOrigin = origin;
|
|
31
|
-
_timeShift =
|
|
32
|
+
_timeShift = performance.timeOrigin - origin;
|
|
32
33
|
}
|
|
33
34
|
function timeOrigin() {
|
|
34
35
|
return _timeOrigin;
|
|
35
36
|
}
|
|
36
37
|
function monotonicTime() {
|
|
37
|
-
return Math.floor((
|
|
38
|
+
return Math.floor((performance.now() + _timeShift) * 1e3) / 1e3;
|
|
38
39
|
}
|
|
40
|
+
const DEFAULT_PLAYWRIGHT_TIMEOUT = 3e4;
|
|
41
|
+
const DEFAULT_PLAYWRIGHT_LAUNCH_TIMEOUT = 3 * 60 * 1e3;
|
|
39
42
|
// Annotate the CommonJS export names for ESM import in node:
|
|
40
43
|
0 && (module.exports = {
|
|
44
|
+
DEFAULT_PLAYWRIGHT_LAUNCH_TIMEOUT,
|
|
45
|
+
DEFAULT_PLAYWRIGHT_TIMEOUT,
|
|
41
46
|
monotonicTime,
|
|
42
47
|
setTimeOrigin,
|
|
43
48
|
timeOrigin
|
|
@@ -22,7 +22,6 @@ __export(timeoutRunner_exports, {
|
|
|
22
22
|
raceAgainstDeadline: () => raceAgainstDeadline
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(timeoutRunner_exports);
|
|
25
|
-
var import_builtins = require("./builtins");
|
|
26
25
|
var import_time = require("./time");
|
|
27
26
|
async function raceAgainstDeadline(cb, deadline) {
|
|
28
27
|
let timer;
|
|
@@ -33,10 +32,10 @@ async function raceAgainstDeadline(cb, deadline) {
|
|
|
33
32
|
new Promise((resolve) => {
|
|
34
33
|
const kMaxDeadline = 2147483647;
|
|
35
34
|
const timeout = (deadline || kMaxDeadline) - (0, import_time.monotonicTime)();
|
|
36
|
-
timer =
|
|
35
|
+
timer = setTimeout(() => resolve({ timedOut: true }), timeout);
|
|
37
36
|
})
|
|
38
37
|
]).finally(() => {
|
|
39
|
-
|
|
38
|
+
clearTimeout(timer);
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
41
|
async function pollAgainstDeadline(callback, deadline, pollIntervals = [100, 250, 500, 1e3]) {
|
|
@@ -56,7 +55,7 @@ async function pollAgainstDeadline(callback, deadline, pollIntervals = [100, 250
|
|
|
56
55
|
const interval = pollIntervals.shift() ?? lastPollInterval;
|
|
57
56
|
if (deadline && deadline <= (0, import_time.monotonicTime)() + interval)
|
|
58
57
|
break;
|
|
59
|
-
await new Promise((x) =>
|
|
58
|
+
await new Promise((x) => setTimeout(x, interval));
|
|
60
59
|
}
|
|
61
60
|
return { timedOut: true, result: lastResult };
|
|
62
61
|
}
|
|
@@ -22,9 +22,8 @@ __export(traceUtils_exports, {
|
|
|
22
22
|
serializeClientSideCallMetadata: () => serializeClientSideCallMetadata
|
|
23
23
|
});
|
|
24
24
|
module.exports = __toCommonJS(traceUtils_exports);
|
|
25
|
-
var import_builtins = require("./builtins");
|
|
26
25
|
function parseClientSideCallMetadata(data) {
|
|
27
|
-
const result = new
|
|
26
|
+
const result = /* @__PURE__ */ new Map();
|
|
28
27
|
const { files, stacks } = data;
|
|
29
28
|
for (const s of stacks) {
|
|
30
29
|
const [id, ff] = s;
|
|
@@ -33,7 +32,7 @@ function parseClientSideCallMetadata(data) {
|
|
|
33
32
|
return result;
|
|
34
33
|
}
|
|
35
34
|
function serializeClientSideCallMetadata(metadatas) {
|
|
36
|
-
const fileNames = new
|
|
35
|
+
const fileNames = /* @__PURE__ */ new Map();
|
|
37
36
|
const stacks = [];
|
|
38
37
|
for (const m of metadatas) {
|
|
39
38
|
if (!m.stack || !m.stack.length)
|
|
@@ -25,9 +25,8 @@ __export(urlMatch_exports, {
|
|
|
25
25
|
urlMatchesEqual: () => urlMatchesEqual
|
|
26
26
|
});
|
|
27
27
|
module.exports = __toCommonJS(urlMatch_exports);
|
|
28
|
-
var import_builtins = require("./builtins");
|
|
29
28
|
var import_stringUtils = require("./stringUtils");
|
|
30
|
-
const escapedChars = new
|
|
29
|
+
const escapedChars = /* @__PURE__ */ new Set(["$", "^", "+", ".", "*", "(", ")", "|", "\\", "?", "{", "}", "[", "]"]);
|
|
31
30
|
function globToRegexPattern(glob) {
|
|
32
31
|
const tokens = ["^"];
|
|
33
32
|
let inGroup = false;
|
|
@@ -122,8 +121,10 @@ function resolveGlobBase(baseURL, match) {
|
|
|
122
121
|
return replacement;
|
|
123
122
|
};
|
|
124
123
|
var mapToken = mapToken2;
|
|
125
|
-
const tokenMap = new
|
|
124
|
+
const tokenMap = /* @__PURE__ */ new Map();
|
|
126
125
|
match = match.replaceAll(/\\\\\?/g, "?");
|
|
126
|
+
if (match.startsWith("about:") || match.startsWith("data:") || match.startsWith("chrome:") || match.startsWith("edge:") || match.startsWith("file:"))
|
|
127
|
+
return match;
|
|
127
128
|
const relativePath = match.split("/").map((token, index) => {
|
|
128
129
|
if (token === "." || token === ".." || token === "")
|
|
129
130
|
return token;
|
|
@@ -136,9 +137,12 @@ function resolveGlobBase(baseURL, match) {
|
|
|
136
137
|
const newSuffix = mapToken2(token.substring(questionIndex), `?$_${index}_$`);
|
|
137
138
|
return newPrefix + newSuffix;
|
|
138
139
|
}).join("/");
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
const result = resolveBaseURL(baseURL, relativePath);
|
|
141
|
+
let resolved = result.resolved;
|
|
142
|
+
for (const [token, original] of tokenMap) {
|
|
143
|
+
const normalize = result.caseInsensitivePart?.includes(token);
|
|
144
|
+
resolved = resolved.replace(token, normalize ? original.toLowerCase() : original);
|
|
145
|
+
}
|
|
142
146
|
match = resolved;
|
|
143
147
|
}
|
|
144
148
|
return match;
|
|
@@ -152,11 +156,21 @@ function parseURL(url) {
|
|
|
152
156
|
}
|
|
153
157
|
function constructURLBasedOnBaseURL(baseURL, givenURL) {
|
|
154
158
|
try {
|
|
155
|
-
return
|
|
159
|
+
return resolveBaseURL(baseURL, givenURL).resolved;
|
|
156
160
|
} catch (e) {
|
|
157
161
|
return givenURL;
|
|
158
162
|
}
|
|
159
163
|
}
|
|
164
|
+
function resolveBaseURL(baseURL, givenURL) {
|
|
165
|
+
try {
|
|
166
|
+
const url = new URL(givenURL, baseURL);
|
|
167
|
+
const resolved = url.toString();
|
|
168
|
+
const caseInsensitivePrefix = url.origin;
|
|
169
|
+
return { resolved, caseInsensitivePart: caseInsensitivePrefix };
|
|
170
|
+
} catch (e) {
|
|
171
|
+
return { resolved: givenURL };
|
|
172
|
+
}
|
|
173
|
+
}
|
|
160
174
|
// Annotate the CommonJS export names for ESM import in node:
|
|
161
175
|
0 && (module.exports = {
|
|
162
176
|
constructURLBasedOnBaseURL,
|