patchright-core 1.50.1 → 1.51.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.
Files changed (242) hide show
  1. package/ThirdPartyNotices.txt +1 -43
  2. package/browsers.json +22 -10
  3. package/index.js +0 -1
  4. package/lib/androidServerImpl.js +4 -4
  5. package/lib/browserServerImpl.js +18 -9
  6. package/lib/cli/driver.js +6 -6
  7. package/lib/cli/program.js +9 -9
  8. package/lib/cli/programWithTestStub.js +2 -1
  9. package/lib/client/android.js +37 -58
  10. package/lib/client/artifact.js +4 -7
  11. package/lib/client/browser.js +10 -15
  12. package/lib/client/browserContext.js +77 -73
  13. package/lib/client/browserType.js +30 -64
  14. package/lib/client/channelOwner.js +23 -20
  15. package/lib/client/clientHelper.js +5 -7
  16. package/lib/client/clientStackTrace.js +65 -0
  17. package/lib/client/connection.js +46 -39
  18. package/lib/client/consoleMessage.js +4 -7
  19. package/lib/client/electron.js +10 -10
  20. package/lib/client/elementHandle.js +32 -33
  21. package/lib/client/errors.js +2 -2
  22. package/lib/client/eventEmitter.js +5 -8
  23. package/lib/client/fetch.js +60 -61
  24. package/lib/client/fileUtils.js +31 -0
  25. package/lib/client/frame.js +30 -29
  26. package/lib/client/harRouter.js +7 -9
  27. package/lib/client/jsHandle.js +3 -4
  28. package/lib/client/localUtils.js +24 -0
  29. package/lib/client/locator.js +37 -18
  30. package/lib/client/network.js +40 -40
  31. package/lib/client/page.js +59 -55
  32. package/lib/client/platform.js +71 -0
  33. package/lib/client/playwright.js +21 -1
  34. package/lib/client/selectors.js +8 -2
  35. package/lib/client/stream.js +2 -21
  36. package/lib/client/timeoutSettings.js +65 -0
  37. package/lib/client/tracing.js +10 -7
  38. package/lib/client/video.js +2 -2
  39. package/lib/client/waiter.js +5 -6
  40. package/lib/client/webSocket.js +106 -0
  41. package/lib/client/worker.js +12 -10
  42. package/lib/client/writableStream.js +2 -21
  43. package/lib/generated/consoleApiSource.js +1 -1
  44. package/lib/generated/injectedScriptSource.js +1 -1
  45. package/lib/inProcessFactory.js +6 -3
  46. package/lib/outofprocess.js +12 -8
  47. package/lib/protocol/validator.js +64 -13
  48. package/lib/protocol/validatorPrimitives.js +1 -2
  49. package/lib/remote/playwrightConnection.js +18 -10
  50. package/lib/remote/playwrightServer.js +20 -7
  51. package/lib/server/android/android.js +17 -14
  52. package/lib/server/android/backendAdb.js +14 -14
  53. package/lib/server/artifact.js +3 -3
  54. package/lib/server/bidi/bidiBrowser.js +2 -2
  55. package/lib/server/bidi/bidiChromium.js +4 -3
  56. package/lib/server/bidi/bidiConnection.js +1 -1
  57. package/lib/server/bidi/bidiExecutionContext.js +70 -40
  58. package/lib/server/bidi/bidiFirefox.js +4 -3
  59. package/lib/server/bidi/bidiInput.js +5 -8
  60. package/lib/server/bidi/bidiNetworkManager.js +3 -3
  61. package/lib/server/bidi/bidiOverCdp.js +2 -2
  62. package/lib/server/bidi/bidiPage.js +30 -46
  63. package/lib/server/bidi/third_party/firefoxPrefs.js +19 -3
  64. package/lib/server/browser.js +2 -2
  65. package/lib/server/browserContext.js +37 -40
  66. package/lib/server/browserType.js +18 -17
  67. package/lib/{utils/sequence.js → server/callLog.js} +18 -3
  68. package/lib/server/chromium/chromium.js +14 -14
  69. package/lib/server/chromium/chromiumSwitches.js +32 -1
  70. package/lib/server/chromium/crBrowser.js +15 -14
  71. package/lib/server/chromium/crConnection.js +2 -2
  72. package/lib/server/chromium/crCoverage.js +1 -1
  73. package/lib/server/chromium/crDevTools.js +1 -1
  74. package/lib/server/chromium/crDragDrop.js +1 -1
  75. package/lib/server/chromium/crExecutionContext.js +25 -17
  76. package/lib/server/chromium/crInput.js +2 -2
  77. package/lib/server/chromium/crNetworkManager.js +73 -26
  78. package/lib/server/chromium/crPage.js +22 -23
  79. package/lib/server/chromium/crPdf.js +1 -1
  80. package/lib/server/chromium/crProtocolHelper.js +3 -3
  81. package/lib/server/chromium/crServiceWorker.js +2 -2
  82. package/lib/server/chromium/videoRecorder.js +2 -2
  83. package/lib/server/clock.js +1 -1
  84. package/lib/server/codegen/javascript.js +1 -1
  85. package/lib/server/codegen/languages.js +2 -2
  86. package/lib/server/debugController.js +3 -3
  87. package/lib/server/deviceDescriptors.js +1 -1
  88. package/lib/server/deviceDescriptorsSource.json +131 -131
  89. package/lib/server/dispatchers/androidDispatcher.js +1 -1
  90. package/lib/server/dispatchers/artifactDispatcher.js +3 -3
  91. package/lib/server/dispatchers/browserContextDispatcher.js +19 -19
  92. package/lib/server/dispatchers/browserTypeDispatcher.js +1 -1
  93. package/lib/server/dispatchers/cdpSessionDispatcher.js +1 -1
  94. package/lib/server/dispatchers/dispatcher.js +27 -25
  95. package/lib/server/dispatchers/electronDispatcher.js +3 -3
  96. package/lib/server/dispatchers/elementHandlerDispatcher.js +7 -2
  97. package/lib/server/dispatchers/frameDispatcher.js +4 -4
  98. package/lib/server/dispatchers/jsHandleDispatcher.js +2 -2
  99. package/lib/server/dispatchers/jsonPipeDispatcher.js +2 -2
  100. package/lib/server/dispatchers/localUtilsDispatcher.js +25 -298
  101. package/lib/server/dispatchers/networkDispatchers.js +3 -3
  102. package/lib/server/dispatchers/pageDispatcher.js +11 -9
  103. package/lib/server/dispatchers/playwrightDispatcher.js +5 -5
  104. package/lib/server/dispatchers/streamDispatcher.js +4 -3
  105. package/lib/server/dispatchers/webSocketRouteDispatcher.js +8 -7
  106. package/lib/server/dispatchers/writableStreamDispatcher.js +5 -6
  107. package/lib/server/dom.js +18 -12
  108. package/lib/server/download.js +1 -1
  109. package/lib/server/electron/electron.js +17 -16
  110. package/lib/server/errors.js +1 -1
  111. package/lib/server/fetch.js +36 -25
  112. package/lib/server/fileUploadUtils.js +7 -4
  113. package/lib/server/firefox/ffBrowser.js +8 -2
  114. package/lib/server/firefox/ffConnection.js +1 -1
  115. package/lib/server/firefox/ffExecutionContext.js +25 -17
  116. package/lib/server/firefox/ffNetworkManager.js +2 -2
  117. package/lib/server/firefox/ffPage.js +15 -21
  118. package/lib/server/firefox/firefox.js +7 -9
  119. package/lib/server/frameSelectors.js +1 -1
  120. package/lib/server/frames.js +366 -209
  121. package/lib/server/har/harRecorder.js +4 -4
  122. package/lib/server/har/harTracer.js +7 -8
  123. package/lib/server/harBackend.js +157 -0
  124. package/lib/server/helper.js +2 -2
  125. package/lib/server/index.js +1 -8
  126. package/lib/server/input.js +1 -1
  127. package/lib/server/instrumentation.js +2 -2
  128. package/lib/server/isomorphic/utilityScriptSerializers.js +3 -0
  129. package/lib/server/javascript.js +46 -33
  130. package/lib/server/launchApp.js +2 -2
  131. package/lib/server/localUtils.js +203 -0
  132. package/lib/server/network.js +3 -3
  133. package/lib/server/page.js +41 -22
  134. package/lib/server/pipeTransport.js +1 -1
  135. package/lib/server/playwright.js +5 -5
  136. package/lib/server/progress.js +1 -1
  137. package/lib/server/protocolError.js +1 -1
  138. package/lib/server/recorder/contextRecorder.js +3 -3
  139. package/lib/server/recorder/recorderApp.js +18 -12
  140. package/lib/server/recorder/recorderCollection.js +3 -3
  141. package/lib/server/recorder/throttledFile.js +3 -4
  142. package/lib/server/recorder.js +7 -5
  143. package/lib/server/registry/browserFetcher.js +9 -7
  144. package/lib/server/registry/dependencies.js +15 -15
  145. package/lib/server/registry/index.js +38 -44
  146. package/lib/server/registry/oopDownloadBrowserMain.js +3 -3
  147. package/lib/server/screenshotter.js +1 -1
  148. package/lib/server/selectors.js +3 -3
  149. package/lib/server/socksClientCertificatesInterceptor.js +8 -8
  150. package/lib/server/socksInterceptor.js +8 -5
  151. package/lib/server/storageScript.js +160 -0
  152. package/lib/{common → server}/timeoutSettings.js +6 -5
  153. package/lib/server/trace/recorder/snapshotter.js +9 -8
  154. package/lib/server/trace/recorder/tracing.js +40 -31
  155. package/lib/server/trace/test/inMemorySnapshotter.js +4 -4
  156. package/lib/server/trace/viewer/traceViewer.js +13 -5
  157. package/lib/server/transport.js +2 -2
  158. package/lib/{utils → server/utils}/comparators.js +4 -4
  159. package/lib/{utils → server/utils}/crypto.js +4 -4
  160. package/lib/{utils → server/utils}/debug.js +4 -12
  161. package/lib/{utils → server/utils}/debugLogger.js +2 -2
  162. package/lib/{utils → server/utils}/env.js +4 -0
  163. package/lib/{utils → server/utils}/expectUtils.js +1 -1
  164. package/lib/{utils → server/utils}/fileUtils.js +4 -5
  165. package/lib/{utils/happy-eyeballs.js → server/utils/happyEyeballs.js} +22 -24
  166. package/lib/{utils → server/utils}/hostPlatform.js +1 -1
  167. package/lib/{utils → server/utils}/httpServer.js +8 -8
  168. package/lib/{utils → server/utils}/linuxUtils.js +3 -23
  169. package/lib/{utils → server/utils}/network.js +4 -4
  170. package/lib/server/utils/nodePlatform.js +140 -0
  171. package/lib/{protocol/transport.js → server/utils/pipeTransport.js} +2 -2
  172. package/lib/{utils → server/utils}/processLauncher.js +5 -5
  173. package/lib/{utils → server/utils}/profiler.js +5 -6
  174. package/lib/{common → server/utils}/socksProxy.js +10 -9
  175. package/lib/{utils → server/utils}/userAgent.js +2 -16
  176. package/lib/{utils → server/utils}/wsServer.js +3 -3
  177. package/lib/{utils → server/utils}/zipFile.js +1 -1
  178. package/lib/{utils → server/utils}/zones.js +9 -24
  179. package/lib/server/webkit/webkit.js +4 -4
  180. package/lib/server/webkit/wkBrowser.js +4 -4
  181. package/lib/server/webkit/wkConnection.js +1 -1
  182. package/lib/server/webkit/wkExecutionContext.js +25 -17
  183. package/lib/server/webkit/wkInput.js +2 -2
  184. package/lib/server/webkit/wkInterceptableRequest.js +2 -2
  185. package/lib/server/webkit/wkPage.js +41 -40
  186. package/lib/server/webkit/wkProvisionalPage.js +1 -1
  187. package/lib/server/webkit/wkWorkers.js +2 -2
  188. package/lib/utils/isomorphic/ariaSnapshot.js +2 -1
  189. package/lib/utils/isomorphic/assert.js +25 -0
  190. package/lib/utils/isomorphic/colors.js +65 -0
  191. package/lib/utils/isomorphic/cssParser.js +1 -1
  192. package/lib/utils/isomorphic/locatorGenerators.js +13 -1
  193. package/lib/utils/isomorphic/locatorParser.js +2 -2
  194. package/lib/utils/{manualPromise.js → isomorphic/manualPromise.js} +3 -5
  195. package/lib/utils/isomorphic/mimeType.js +11 -3
  196. package/lib/utils/{multimap.js → isomorphic/multimap.js} +1 -3
  197. package/lib/utils/{rtti.js → isomorphic/rtti.js} +2 -5
  198. package/lib/utils/isomorphic/stackTrace.js +169 -0
  199. package/lib/utils/isomorphic/stringUtils.js +1 -1
  200. package/lib/utils/{time.js → isomorphic/time.js} +1 -13
  201. package/lib/utils/{timeoutRunner.js → isomorphic/timeoutRunner.js} +4 -4
  202. package/lib/utils/isomorphic/traceUtils.js +23 -0
  203. package/lib/{utils/index.js → utils.js} +200 -121
  204. package/lib/utilsBundle.js +1 -25
  205. package/lib/utilsBundleImpl/index.js +114 -116
  206. package/lib/vite/htmlReport/index.html +20 -20
  207. package/lib/vite/recorder/assets/codeMirrorModule-B9YMkrwa.js +24 -0
  208. package/lib/vite/recorder/assets/index-ELPgmkwA.js +184 -0
  209. package/lib/vite/recorder/index.html +1 -1
  210. package/lib/vite/traceViewer/assets/codeMirrorModule-DpJ-EmBQ.js +24 -0
  211. package/lib/vite/traceViewer/assets/defaultSettingsView-DTenqiGw.js +259 -0
  212. package/lib/vite/traceViewer/assets/{xtermModule-c-SNdYZy.js → xtermModule-BoAIEibi.js} +7 -7
  213. package/lib/vite/traceViewer/defaultSettingsView.5fN5lw10.css +1 -0
  214. package/lib/vite/traceViewer/index.CUq7VgrV.js +2 -0
  215. package/lib/vite/traceViewer/index.html +3 -3
  216. package/lib/vite/traceViewer/sw.bundle.js +3 -3
  217. package/lib/vite/traceViewer/uiMode.CHJSAD7F.js +5 -0
  218. package/lib/vite/traceViewer/uiMode.html +3 -3
  219. package/lib/zipBundleImpl.js +4 -4
  220. package/package.json +7 -7
  221. package/types/protocol.d.ts +123 -99
  222. package/types/types.d.ts +91 -37
  223. package/lib/utils/stackTrace.js +0 -134
  224. package/lib/utils/traceUtils.js +0 -44
  225. package/lib/vite/recorder/assets/codeMirrorModule-CNAqJrkA.js +0 -24
  226. package/lib/vite/recorder/assets/index-DGS0JLxS.js +0 -184
  227. package/lib/vite/traceViewer/assets/codeMirrorModule-D55P_UuL.js +0 -24
  228. package/lib/vite/traceViewer/assets/defaultSettingsView-B-uNoFsX.js +0 -243
  229. package/lib/vite/traceViewer/defaultSettingsView.2xeEXCXv.css +0 -1
  230. package/lib/vite/traceViewer/index.BfvuujqP.js +0 -2
  231. package/lib/vite/traceViewer/uiMode.CStJu6jo.js +0 -5
  232. /package/lib/{utils → server/utils}/ascii.js +0 -0
  233. /package/lib/{utils → server/utils}/eventsHelper.js +0 -0
  234. /package/lib/{image_tools → server/utils/image_tools}/colorUtils.js +0 -0
  235. /package/lib/{image_tools → server/utils/image_tools}/compare.js +0 -0
  236. /package/lib/{image_tools → server/utils/image_tools}/imageChannel.js +0 -0
  237. /package/lib/{image_tools → server/utils/image_tools}/stats.js +0 -0
  238. /package/lib/{utils → server/utils}/spawnAsync.js +0 -0
  239. /package/lib/{utils → server/utils}/task.js +0 -0
  240. /package/lib/utils/{headers.js → isomorphic/headers.js} +0 -0
  241. /package/lib/utils/{semaphore.js → isomorphic/semaphore.js} +0 -0
  242. /package/lib/{common → utils/isomorphic}/types.js +0 -0
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.addStackToTracingNoReply = addStackToTracingNoReply;
7
+ exports.harClose = harClose;
8
+ exports.harLookup = harLookup;
9
+ exports.harOpen = harOpen;
10
+ exports.harUnzip = harUnzip;
11
+ exports.traceDiscarded = traceDiscarded;
12
+ exports.tracingStarted = tracingStarted;
13
+ exports.zip = zip;
14
+ var _fs = _interopRequireDefault(require("fs"));
15
+ var _os = _interopRequireDefault(require("os"));
16
+ var _path = _interopRequireDefault(require("path"));
17
+ var _crypto = require("./utils/crypto");
18
+ var _harBackend = require("./harBackend");
19
+ var _manualPromise = require("../utils/isomorphic/manualPromise");
20
+ var _zipFile = require("./utils/zipFile");
21
+ var _zipBundle = require("../zipBundle");
22
+ var _traceUtils = require("../utils/isomorphic/traceUtils");
23
+ var _assert = require("../utils/isomorphic/assert");
24
+ var _fileUtils = require("./utils/fileUtils");
25
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
26
+ /**
27
+ * Copyright (c) Microsoft Corporation.
28
+ *
29
+ * Licensed under the Apache License, Version 2.0 (the 'License");
30
+ * you may not use this file except in compliance with the License.
31
+ * You may obtain a copy of the License at
32
+ *
33
+ * http://www.apache.org/licenses/LICENSE-2.0
34
+ *
35
+ * Unless required by applicable law or agreed to in writing, software
36
+ * distributed under the License is distributed on an "AS IS" BASIS,
37
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
38
+ * See the License for the specific language governing permissions and
39
+ * limitations under the License.
40
+ */
41
+
42
+ async function zip(stackSessions, params) {
43
+ const promise = new _manualPromise.ManualPromise();
44
+ const zipFile = new _zipBundle.yazl.ZipFile();
45
+ zipFile.on('error', error => promise.reject(error));
46
+ const addFile = (file, name) => {
47
+ try {
48
+ if (_fs.default.statSync(file).isFile()) zipFile.addFile(file, name);
49
+ } catch (e) {}
50
+ };
51
+ for (const entry of params.entries) addFile(entry.value, entry.name);
52
+
53
+ // Add stacks and the sources.
54
+ const stackSession = params.stacksId ? stackSessions.get(params.stacksId) : undefined;
55
+ if (stackSession !== null && stackSession !== void 0 && stackSession.callStacks.length) {
56
+ await stackSession.writer;
57
+ if (process.env.PW_LIVE_TRACE_STACKS) {
58
+ zipFile.addFile(stackSession.file, 'trace.stacks');
59
+ } else {
60
+ const buffer = Buffer.from(JSON.stringify((0, _traceUtils.serializeClientSideCallMetadata)(stackSession.callStacks)));
61
+ zipFile.addBuffer(buffer, 'trace.stacks');
62
+ }
63
+ }
64
+
65
+ // Collect sources from stacks.
66
+ if (params.includeSources) {
67
+ const sourceFiles = new Set();
68
+ for (const {
69
+ stack
70
+ } of (stackSession === null || stackSession === void 0 ? void 0 : stackSession.callStacks) || []) {
71
+ if (!stack) continue;
72
+ for (const {
73
+ file
74
+ } of stack) sourceFiles.add(file);
75
+ }
76
+ for (const sourceFile of sourceFiles) addFile(sourceFile, 'resources/src@' + (await (0, _crypto.calculateSha1)(sourceFile)) + '.txt');
77
+ }
78
+ if (params.mode === 'write') {
79
+ // New file, just compress the entries.
80
+ await _fs.default.promises.mkdir(_path.default.dirname(params.zipFile), {
81
+ recursive: true
82
+ });
83
+ zipFile.end(undefined, () => {
84
+ zipFile.outputStream.pipe(_fs.default.createWriteStream(params.zipFile)).on('close', () => promise.resolve()).on('error', error => promise.reject(error));
85
+ });
86
+ await promise;
87
+ await deleteStackSession(stackSessions, params.stacksId);
88
+ return;
89
+ }
90
+
91
+ // File already exists. Repack and add new entries.
92
+ const tempFile = params.zipFile + '.tmp';
93
+ await _fs.default.promises.rename(params.zipFile, tempFile);
94
+ _zipBundle.yauzl.open(tempFile, (err, inZipFile) => {
95
+ if (err) {
96
+ promise.reject(err);
97
+ return;
98
+ }
99
+ (0, _assert.assert)(inZipFile);
100
+ let pendingEntries = inZipFile.entryCount;
101
+ inZipFile.on('entry', entry => {
102
+ inZipFile.openReadStream(entry, (err, readStream) => {
103
+ if (err) {
104
+ promise.reject(err);
105
+ return;
106
+ }
107
+ zipFile.addReadStream(readStream, entry.fileName);
108
+ if (--pendingEntries === 0) {
109
+ zipFile.end(undefined, () => {
110
+ zipFile.outputStream.pipe(_fs.default.createWriteStream(params.zipFile)).on('close', () => {
111
+ _fs.default.promises.unlink(tempFile).then(() => {
112
+ promise.resolve();
113
+ }).catch(error => promise.reject(error));
114
+ });
115
+ });
116
+ }
117
+ });
118
+ });
119
+ });
120
+ await promise;
121
+ await deleteStackSession(stackSessions, params.stacksId);
122
+ }
123
+ async function deleteStackSession(stackSessions, stacksId) {
124
+ const session = stacksId ? stackSessions.get(stacksId) : undefined;
125
+ if (!session) return;
126
+ await session.writer;
127
+ if (session.tmpDir) await (0, _fileUtils.removeFolders)([session.tmpDir]);
128
+ stackSessions.delete(stacksId);
129
+ }
130
+ async function harOpen(harBackends, params) {
131
+ let harBackend;
132
+ if (params.file.endsWith('.zip')) {
133
+ const zipFile = new _zipFile.ZipFile(params.file);
134
+ const entryNames = await zipFile.entries();
135
+ const harEntryName = entryNames.find(e => e.endsWith('.har'));
136
+ if (!harEntryName) return {
137
+ error: 'Specified archive does not have a .har file'
138
+ };
139
+ const har = await zipFile.read(harEntryName);
140
+ const harFile = JSON.parse(har.toString());
141
+ harBackend = new _harBackend.HarBackend(harFile, null, zipFile);
142
+ } else {
143
+ const harFile = JSON.parse(await _fs.default.promises.readFile(params.file, 'utf-8'));
144
+ harBackend = new _harBackend.HarBackend(harFile, _path.default.dirname(params.file), null);
145
+ }
146
+ harBackends.set(harBackend.id, harBackend);
147
+ return {
148
+ harId: harBackend.id
149
+ };
150
+ }
151
+ async function harLookup(harBackends, params) {
152
+ const harBackend = harBackends.get(params.harId);
153
+ if (!harBackend) return {
154
+ action: 'error',
155
+ message: `Internal error: har was not opened`
156
+ };
157
+ return await harBackend.lookup(params.url, params.method, params.headers, params.postData, params.isNavigationRequest);
158
+ }
159
+ async function harClose(harBackends, params) {
160
+ const harBackend = harBackends.get(params.harId);
161
+ if (harBackend) {
162
+ harBackends.delete(harBackend.id);
163
+ harBackend.dispose();
164
+ }
165
+ }
166
+ async function harUnzip(params) {
167
+ const dir = _path.default.dirname(params.zipFile);
168
+ const zipFile = new _zipFile.ZipFile(params.zipFile);
169
+ for (const entry of await zipFile.entries()) {
170
+ const buffer = await zipFile.read(entry);
171
+ if (entry === 'har.har') await _fs.default.promises.writeFile(params.harFile, buffer);else await _fs.default.promises.writeFile(_path.default.join(dir, entry), buffer);
172
+ }
173
+ zipFile.close();
174
+ await _fs.default.promises.unlink(params.zipFile);
175
+ }
176
+ async function tracingStarted(stackSessions, params) {
177
+ let tmpDir = undefined;
178
+ if (!params.tracesDir) tmpDir = await _fs.default.promises.mkdtemp(_path.default.join(_os.default.tmpdir(), 'playwright-tracing-'));
179
+ const traceStacksFile = _path.default.join(params.tracesDir || tmpDir, params.traceName + '.stacks');
180
+ stackSessions.set(traceStacksFile, {
181
+ callStacks: [],
182
+ file: traceStacksFile,
183
+ writer: Promise.resolve(),
184
+ tmpDir
185
+ });
186
+ return {
187
+ stacksId: traceStacksFile
188
+ };
189
+ }
190
+ async function traceDiscarded(stackSessions, params) {
191
+ await deleteStackSession(stackSessions, params.stacksId);
192
+ }
193
+ async function addStackToTracingNoReply(stackSessions, params) {
194
+ for (const session of stackSessions.values()) {
195
+ session.callStacks.push(params.callData);
196
+ if (process.env.PW_LIVE_TRACE_STACKS) {
197
+ session.writer = session.writer.then(() => {
198
+ const buffer = Buffer.from(JSON.stringify((0, _traceUtils.serializeClientSideCallMetadata)(session.callStacks)));
199
+ return _fs.default.promises.writeFile(session.file, buffer);
200
+ });
201
+ }
202
+ }
203
+ }
@@ -13,10 +13,10 @@ exports.singleHeader = singleHeader;
13
13
  exports.statusText = statusText;
14
14
  exports.stripFragmentFromUrl = stripFragmentFromUrl;
15
15
  var _utils = require("../utils");
16
- var _manualPromise = require("../utils/manualPromise");
17
- var _instrumentation = require("./instrumentation");
18
- var _fetch = require("./fetch");
19
16
  var _browserContext = require("./browserContext");
17
+ var _fetch = require("./fetch");
18
+ var _instrumentation = require("./instrumentation");
19
+ var _manualPromise = require("../utils/isomorphic/manualPromise");
20
20
  /**
21
21
  * Copyright (c) Microsoft Corporation.
22
22
  *
@@ -4,27 +4,29 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Worker = exports.PageBinding = exports.Page = exports.InitScript = void 0;
7
- var frames = _interopRequireWildcard(require("./frames"));
8
- var input = _interopRequireWildcard(require("./input"));
9
- var js = _interopRequireWildcard(require("./javascript"));
10
- var _screenshotter = require("./screenshotter");
11
- var _timeoutSettings = require("../common/timeoutSettings");
7
+ var accessibility = _interopRequireWildcard(require("./accessibility"));
12
8
  var _browserContext = require("./browserContext");
13
9
  var _console = require("./console");
14
- var accessibility = _interopRequireWildcard(require("./accessibility"));
10
+ var _errors = require("./errors");
15
11
  var _fileChooser = require("./fileChooser");
12
+ var frames = _interopRequireWildcard(require("./frames"));
13
+ var _helper = require("./helper");
14
+ var input = _interopRequireWildcard(require("./input"));
15
+ var _instrumentation = require("./instrumentation");
16
+ var _utilityScriptSerializers = require("./isomorphic/utilityScriptSerializers");
17
+ var js = _interopRequireWildcard(require("./javascript"));
16
18
  var _progress = require("./progress");
19
+ var _screenshotter = require("./screenshotter");
20
+ var _timeoutSettings = require("./timeoutSettings");
17
21
  var _utils = require("../utils");
18
- var _manualPromise = require("../utils/manualPromise");
19
- var _debugLogger = require("../utils/debugLogger");
20
- var _comparators = require("../utils/comparators");
21
- var _instrumentation = require("./instrumentation");
22
+ var _crypto = require("./utils/crypto");
23
+ var _comparators = require("./utils/comparators");
24
+ var _debugLogger = require("./utils/debugLogger");
22
25
  var _selectorParser = require("../utils/isomorphic/selectorParser");
23
- var _utilityScriptSerializers = require("./isomorphic/utilityScriptSerializers");
24
- var _errors = require("./errors");
25
- var _helper = require("./helper");
26
+ var _manualPromise = require("../utils/isomorphic/manualPromise");
27
+ var _callLog = require("./callLog");
26
28
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
27
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
29
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
28
30
  /**
29
31
  * Copyright 2017 Google Inc. All rights reserved.
30
32
  * Modifications copyright (c) Microsoft Corporation.
@@ -378,16 +380,18 @@ class Page extends _instrumentation.SdkObject {
378
380
  if (options.colorScheme !== undefined) this._emulatedMedia.colorScheme = options.colorScheme;
379
381
  if (options.reducedMotion !== undefined) this._emulatedMedia.reducedMotion = options.reducedMotion;
380
382
  if (options.forcedColors !== undefined) this._emulatedMedia.forcedColors = options.forcedColors;
383
+ if (options.contrast !== undefined) this._emulatedMedia.contrast = options.contrast;
381
384
  await this._delegate.updateEmulateMedia();
382
385
  }
383
386
  emulatedMedia() {
384
- var _contextOptions$color, _contextOptions$reduc, _contextOptions$force;
387
+ var _contextOptions$color, _contextOptions$reduc, _contextOptions$force, _contextOptions$contr;
385
388
  const contextOptions = this._browserContext._options;
386
389
  return {
387
390
  media: this._emulatedMedia.media || 'no-override',
388
391
  colorScheme: this._emulatedMedia.colorScheme !== undefined ? this._emulatedMedia.colorScheme : (_contextOptions$color = contextOptions.colorScheme) !== null && _contextOptions$color !== void 0 ? _contextOptions$color : 'light',
389
392
  reducedMotion: this._emulatedMedia.reducedMotion !== undefined ? this._emulatedMedia.reducedMotion : (_contextOptions$reduc = contextOptions.reducedMotion) !== null && _contextOptions$reduc !== void 0 ? _contextOptions$reduc : 'no-preference',
390
- forcedColors: this._emulatedMedia.forcedColors !== undefined ? this._emulatedMedia.forcedColors : (_contextOptions$force = contextOptions.forcedColors) !== null && _contextOptions$force !== void 0 ? _contextOptions$force : 'none'
393
+ forcedColors: this._emulatedMedia.forcedColors !== undefined ? this._emulatedMedia.forcedColors : (_contextOptions$force = contextOptions.forcedColors) !== null && _contextOptions$force !== void 0 ? _contextOptions$force : 'none',
394
+ contrast: this._emulatedMedia.contrast !== undefined ? this._emulatedMedia.contrast : (_contextOptions$contr = contextOptions.contrast) !== null && _contextOptions$contr !== void 0 ? _contextOptions$contr : 'no-preference'
391
395
  };
392
396
  }
393
397
  async setViewportSize(viewportSize) {
@@ -517,7 +521,7 @@ class Page extends _instrumentation.SdkObject {
517
521
  let errorMessage = e.message;
518
522
  if (e instanceof _errors.TimeoutError && (_intermediateResult = intermediateResult) !== null && _intermediateResult !== void 0 && _intermediateResult.previous) errorMessage = `Failed to take two consecutive stable screenshots.`;
519
523
  return {
520
- log: (0, _utils.compressCallLog)(e.message ? [...metadata.log, e.message] : metadata.log),
524
+ log: (0, _callLog.compressCallLog)(e.message ? [...metadata.log, e.message] : metadata.log),
521
525
  ...intermediateResult,
522
526
  errorMessage,
523
527
  timedOut: e instanceof _errors.TimeoutError
@@ -641,6 +645,7 @@ class Worker extends _instrumentation.SdkObject {
641
645
  _createExecutionContext(delegate) {
642
646
  this._existingExecutionContext = new js.ExecutionContext(this, delegate, 'worker');
643
647
  this._executionContextCallback(this._existingExecutionContext);
648
+ return this._existingExecutionContext;
644
649
  }
645
650
  url() {
646
651
  return this._url;
@@ -650,14 +655,28 @@ class Worker extends _instrumentation.SdkObject {
650
655
  this.emit(Worker.Events.Close, this);
651
656
  this.openScope.close(new Error('Worker closed'));
652
657
  }
653
- async evaluateExpression(expression, isFunction, arg) {
654
- return js.evaluateExpression(await this._executionContextPromise, expression, {
658
+ async evaluateExpression(expression, isFunction, arg, isolatedContext) {
659
+ let context = await this._executionContextPromise;
660
+ if (context.constructor.name === "FrameExecutionContext") {
661
+ const frame = context.frame;
662
+ if (frame) {
663
+ if (isolatedContext) context = await frame._utilityContext();else if (!isolatedContext) context = await frame._mainContext();
664
+ }
665
+ }
666
+ return js.evaluateExpression(context, expression, {
655
667
  returnByValue: true,
656
668
  isFunction
657
669
  }, arg);
658
670
  }
659
- async evaluateExpressionHandle(expression, isFunction, arg) {
660
- return js.evaluateExpression(await this._executionContextPromise, expression, {
671
+ async evaluateExpressionHandle(expression, isFunction, arg, isolatedContext) {
672
+ let context = await this._executionContextPromise;
673
+ if (this._context.constructor.name === "FrameExecutionContext") {
674
+ const frame = this._context.frame;
675
+ if (frame) {
676
+ if (isolatedContext) context = await frame._utilityContext();else if (!isolatedContext) context = await frame._mainContext();
677
+ }
678
+ }
679
+ return js.evaluateExpression(context, expression, {
661
680
  returnByValue: false,
662
681
  isFunction
663
682
  }, arg);
@@ -787,7 +806,7 @@ class InitScript {
787
806
  this.source = void 0;
788
807
  this.internal = void 0;
789
808
  this.name = void 0;
790
- const guid = (0, _utils.createGuid)();
809
+ const guid = (0, _crypto.createGuid)();
791
810
  this.source = `(() => { ${source} })();`;
792
811
  this.internal = !!internal;
793
812
  this.name = name;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.PipeTransport = void 0;
7
7
  var _utils = require("../utils");
8
- var _debugLogger = require("../utils/debugLogger");
8
+ var _debugLogger = require("./utils/debugLogger");
9
9
  /**
10
10
  * Copyright 2018 Google Inc. All rights reserved.
11
11
  * Modifications copyright (c) Microsoft Corporation.
@@ -5,18 +5,18 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.Playwright = void 0;
7
7
  exports.createPlaywright = createPlaywright;
8
+ var _utils = require("../utils");
8
9
  var _android = require("./android/android");
9
10
  var _backendAdb = require("./android/backendAdb");
11
+ var _bidiChromium = require("./bidi/bidiChromium");
12
+ var _bidiFirefox = require("./bidi/bidiFirefox");
10
13
  var _chromium = require("./chromium/chromium");
14
+ var _debugController = require("./debugController");
11
15
  var _electron = require("./electron/electron");
12
16
  var _firefox = require("./firefox/firefox");
17
+ var _instrumentation = require("./instrumentation");
13
18
  var _selectors = require("./selectors");
14
19
  var _webkit = require("./webkit/webkit");
15
- var _instrumentation = require("./instrumentation");
16
- var _utils = require("../utils");
17
- var _debugController = require("./debugController");
18
- var _bidiChromium = require("./bidi/bidiChromium");
19
- var _bidiFirefox = require("./bidi/bidiFirefox");
20
20
  /**
21
21
  * Copyright (c) Microsoft Corporation.
22
22
  *
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ProgressController = void 0;
7
7
  var _errors = require("./errors");
8
8
  var _utils = require("../utils");
9
- var _manualPromise = require("../utils/manualPromise");
9
+ var _manualPromise = require("../utils/isomorphic/manualPromise");
10
10
  /**
11
11
  * Copyright (c) Microsoft Corporation.
12
12
  *
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ProtocolError = void 0;
7
7
  exports.isProtocolError = isProtocolError;
8
8
  exports.isSessionClosedError = isSessionClosedError;
9
- var _stackTrace = require("../utils/stackTrace");
9
+ var _stackTrace = require("../utils/isomorphic/stackTrace");
10
10
  /**
11
11
  * Copyright (c) Microsoft Corporation.
12
12
  *
@@ -6,18 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.ContextRecorder = void 0;
7
7
  exports.generateFrameSelector = generateFrameSelector;
8
8
  var _events = require("events");
9
+ var _recorderCollection = require("./recorderCollection");
9
10
  var recorderSource = _interopRequireWildcard(require("../../generated/pollingRecorderSource"));
10
11
  var _utils = require("../../utils");
11
- var _timeoutRunner = require("../../utils/timeoutRunner");
12
+ var _timeoutRunner = require("../../utils/isomorphic/timeoutRunner");
12
13
  var _browserContext = require("../browserContext");
13
14
  var _languages = require("../codegen/languages");
14
15
  var _frames = require("../frames");
15
16
  var _page = require("../page");
16
17
  var _throttledFile = require("./throttledFile");
17
- var _recorderCollection = require("./recorderCollection");
18
18
  var _language = require("../codegen/language");
19
19
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
21
  /**
22
22
  * Copyright (c) Microsoft Corporation.
23
23
  *
@@ -4,15 +4,15 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.RecorderApp = exports.EmptyRecorderApp = void 0;
7
+ var _events = require("events");
7
8
  var _fs = _interopRequireDefault(require("fs"));
8
9
  var _path = _interopRequireDefault(require("path"));
9
- var _progress = require("../progress");
10
- var _events = require("events");
11
- var _instrumentation = require("../instrumentation");
12
- var _utils = require("../../utils");
10
+ var _debug = require("../utils/debug");
13
11
  var _utilsBundle = require("../../utilsBundle");
12
+ var _instrumentation = require("../instrumentation");
14
13
  var _launchApp = require("../launchApp");
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ var _progress = require("../progress");
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
16
  /**
17
17
  * Copyright (c) Microsoft Corporation.
18
18
  *
@@ -40,7 +40,7 @@ class EmptyRecorderApp extends _events.EventEmitter {
40
40
  async setRunningFile(file) {}
41
41
  async elementPicked(elementInfo, userGesture) {}
42
42
  async updateCallLogs(callLogs) {}
43
- async setSources(sources) {}
43
+ async setSources(sources, primaryPageURL) {}
44
44
  async setActions(actions, sources) {}
45
45
  }
46
46
  exports.EmptyRecorderApp = EmptyRecorderApp;
@@ -117,8 +117,8 @@ class RecorderApp extends _events.EventEmitter {
117
117
  },
118
118
  persistentContextOptions: {
119
119
  noDefaultViewport: true,
120
- headless: !!process.env.PWTEST_CLI_HEADLESS || (0, _utils.isUnderTest)() && !headed,
121
- useWebSocket: (0, _utils.isUnderTest)(),
120
+ headless: !!process.env.PWTEST_CLI_HEADLESS || (0, _debug.isUnderTest)() && !headed,
121
+ useWebSocket: (0, _debug.isUnderTest)(),
122
122
  handleSIGINT: recorder.handleSIGINT,
123
123
  executablePath: inspectedContext._browser.options.isChromium ? inspectedContext._browser.options.customExecutablePath : undefined
124
124
  }
@@ -152,12 +152,18 @@ class RecorderApp extends _events.EventEmitter {
152
152
  isFunction: true
153
153
  }, paused).catch(() => {});
154
154
  }
155
- async setSources(sources) {
156
- await this._page.mainFrame().evaluateExpression((sources => {
157
- window.playwrightSetSources(sources);
155
+ async setSources(sources, primaryPageURL) {
156
+ await this._page.mainFrame().evaluateExpression((({
157
+ sources,
158
+ primaryPageURL
159
+ }) => {
160
+ window.playwrightSetSources(sources, primaryPageURL);
158
161
  }).toString(), {
159
162
  isFunction: true
160
- }, sources).catch(() => {});
163
+ }, {
164
+ sources,
165
+ primaryPageURL
166
+ }).catch(() => {});
161
167
 
162
168
  // Testing harness for runCLI mode.
163
169
  if (process.env.PWTEST_CLI_IS_UNDER_TEST && sources.length) {
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.RecorderCollection = void 0;
7
7
  var _events = require("events");
8
- var _time = require("../../utils/time");
9
- var _recorderUtils = require("./recorderUtils");
10
8
  var _recorderRunner = require("./recorderRunner");
11
- var _debug = require("../../utils/debug");
9
+ var _recorderUtils = require("./recorderUtils");
10
+ var _debug = require("../utils/debug");
11
+ var _time = require("../../utils/isomorphic/time");
12
12
  /**
13
13
  * Copyright (c) Microsoft Corporation.
14
14
  *
@@ -4,9 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ThrottledFile = void 0;
7
- var fs = _interopRequireWildcard(require("fs"));
8
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
7
+ var _fs = _interopRequireDefault(require("fs"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
9
  /**
11
10
  * Copyright (c) Microsoft Corporation.
12
11
  *
@@ -39,7 +38,7 @@ class ThrottledFile {
39
38
  clearTimeout(this._timer);
40
39
  this._timer = undefined;
41
40
  }
42
- if (this._text) fs.writeFileSync(this._file, this._text);
41
+ if (this._text) _fs.default.writeFileSync(this._file, this._text);
43
42
  this._text = undefined;
44
43
  }
45
44
  }
@@ -4,17 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Recorder = void 0;
7
- var fs = _interopRequireWildcard(require("fs"));
7
+ var _fs = _interopRequireDefault(require("fs"));
8
8
  var consoleApiSource = _interopRequireWildcard(require("../generated/consoleApiSource"));
9
9
  var _utils = require("../utils");
10
- var _locatorParser = require("../utils/isomorphic/locatorParser");
11
10
  var _browserContext = require("./browserContext");
12
11
  var _debugger = require("./debugger");
13
12
  var _contextRecorder = require("./recorder/contextRecorder");
14
13
  var _recorderUtils = require("./recorder/recorderUtils");
14
+ var _locatorParser = require("../utils/isomorphic/locatorParser");
15
15
  var _selectorParser = require("../utils/isomorphic/selectorParser");
16
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
17
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
19
  /**
19
20
  * Copyright (c) Microsoft Corporation.
20
21
  *
@@ -325,7 +326,8 @@ class Recorder {
325
326
  }
326
327
  _pushAllSources() {
327
328
  var _this$_recorderApp6;
328
- (_this$_recorderApp6 = this._recorderApp) === null || _this$_recorderApp6 === void 0 || _this$_recorderApp6.setSources([...this._recorderSources, ...this._userSources.values()]);
329
+ const primaryPage = this._context.pages()[0];
330
+ (_this$_recorderApp6 = this._recorderApp) === null || _this$_recorderApp6 === void 0 || _this$_recorderApp6.setSources([...this._recorderSources, ...this._userSources.values()], primaryPage === null || primaryPage === void 0 ? void 0 : primaryPage.mainFrame().url());
329
331
  }
330
332
  async onBeforeInputAction(sdkObject, metadata) {}
331
333
  async onCallLog(sdkObject, metadata, logName, message) {
@@ -349,7 +351,7 @@ class Recorder {
349
351
  }
350
352
  _readSource(fileName) {
351
353
  try {
352
- return fs.readFileSync(fileName, 'utf-8');
354
+ return _fs.default.readFileSync(fileName, 'utf-8');
353
355
  } catch (e) {
354
356
  return '// No source available';
355
357
  }
@@ -5,17 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.downloadBrowserWithProgressBar = downloadBrowserWithProgressBar;
7
7
  exports.logPolitely = logPolitely;
8
+ var childProcess = _interopRequireWildcard(require("child_process"));
8
9
  var _fs = _interopRequireDefault(require("fs"));
9
10
  var _os = _interopRequireDefault(require("os"));
10
11
  var _path = _interopRequireDefault(require("path"));
11
- var _child_process = _interopRequireDefault(require("child_process"));
12
- var _fileUtils = require("../../utils/fileUtils");
13
- var _debugLogger = require("../../utils/debugLogger");
14
- var _manualPromise = require("../../utils/manualPromise");
12
+ var _debugLogger = require("../utils/debugLogger");
13
+ var _manualPromise = require("../../utils/isomorphic/manualPromise");
14
+ var _userAgent = require("../utils/userAgent");
15
15
  var _utilsBundle = require("../../utilsBundle");
16
+ var _fileUtils = require("../utils/fileUtils");
16
17
  var _ = require(".");
17
- var _userAgent = require("../../utils/userAgent");
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
19
21
  /**
20
22
  * Copyright 2017 Google Inc. All rights reserved.
21
23
  * Modifications copyright (c) Microsoft Corporation.
@@ -78,7 +80,7 @@ async function downloadBrowserWithProgressBar(title, browserDirectory, executabl
78
80
  * https://github.com/microsoft/playwright/issues/17394
79
81
  */
80
82
  function downloadBrowserWithProgressBarOutOfProcess(title, browserDirectory, url, zipPath, executablePath, connectionTimeout) {
81
- const cp = _child_process.default.fork(_path.default.join(__dirname, 'oopDownloadBrowserMain.js'));
83
+ const cp = childProcess.fork(_path.default.join(__dirname, 'oopDownloadBrowserMain.js'));
82
84
  const promise = new _manualPromise.ManualPromise();
83
85
  const progress = getDownloadProgress();
84
86
  cp.on('message', message => {