@checkly/playwright-core 1.41.23 → 1.41.25
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/lib/cli/driver.js +1 -9
- package/lib/cli/program.js +3 -11
- package/lib/client/channelOwner.js +1 -1
- package/lib/client/clientHelper.js +1 -5
- package/lib/client/connection.js +1 -1
- package/lib/client/consoleMessage.js +1 -1
- package/lib/client/electron.js +0 -3
- package/lib/client/events.js +0 -1
- package/lib/client/frame.js +1 -2
- package/lib/client/harRouter.js +1 -7
- package/lib/client/page.js +6 -25
- package/lib/common/debugLogger.js +0 -1
- package/lib/common/socksProxy.js +1 -1
- package/lib/generated/consoleApiSource.js +1 -1
- package/lib/generated/injectedScriptSource.js +1 -1
- package/lib/generated/recorderSource.js +1 -1
- package/lib/outofprocess.js +1 -1
- package/lib/protocol/validator.js +29 -46
- package/lib/remote/playwrightConnection.js +1 -1
- package/lib/remote/playwrightServer.js +166 -72
- package/lib/server/android/android.js +1 -1
- package/lib/server/browserType.js +2 -2
- package/lib/server/chromium/chromium.js +4 -5
- package/lib/server/chromium/crConnection.js +1 -1
- package/lib/server/chromium/crPage.js +2 -45
- package/lib/server/console.js +3 -1
- package/lib/server/debugController.js +3 -0
- package/lib/server/deviceDescriptorsSource.json +50 -50
- package/lib/server/dispatchers/browserContextDispatcher.js +2 -3
- package/lib/server/dispatchers/dispatcher.js +10 -9
- package/lib/server/dispatchers/electronDispatcher.js +0 -13
- package/lib/server/dispatchers/frameDispatcher.js +6 -0
- package/lib/server/dispatchers/pageDispatcher.js +10 -14
- package/lib/server/dom.js +167 -130
- package/lib/server/electron/electron.js +12 -38
- package/lib/server/electron/loader.js +2 -4
- package/lib/server/firefox/ffAccessibility.js +1 -2
- package/lib/server/firefox/ffConnection.js +1 -1
- package/lib/server/firefox/ffPage.js +1 -1
- package/lib/server/frames.js +20 -39
- package/lib/server/helper.js +1 -1
- package/lib/server/page.js +5 -49
- package/lib/server/pipeTransport.js +1 -1
- package/lib/server/playwright.js +1 -1
- package/lib/server/progress.js +11 -3
- package/lib/server/recorder/csharp.js +1 -1
- package/lib/server/recorder.js +1 -1
- package/lib/server/registry/browserFetcher.js +1 -1
- package/lib/server/registry/dependencies.js +4 -5
- package/lib/server/registry/index.js +30 -48
- package/lib/server/registry/nativeDeps.js +94 -0
- package/lib/server/trace/recorder/snapshotter.js +1 -1
- package/lib/server/trace/recorder/tracing.js +2 -5
- package/lib/server/trace/viewer/traceViewer.js +1 -1
- package/lib/server/transport.js +2 -4
- package/lib/server/webkit/wkConnection.js +1 -1
- package/lib/server/webkit/wkPage.js +2 -2
- package/lib/utils/comparators.js +4 -4
- package/lib/utils/fileUtils.js +0 -4
- package/lib/utils/hostPlatform.js +1 -1
- package/lib/utils/index.js +0 -11
- package/lib/utils/isomorphic/locatorParser.js +4 -6
- package/lib/utils/network.js +0 -33
- package/lib/utils/processLauncher.js +0 -7
- package/lib/vite/htmlReport/index.html +11 -11
- package/lib/vite/traceViewer/assets/codeMirrorModule-2mdjgmqe.js +24 -0
- package/lib/vite/traceViewer/assets/codeMirrorModule-GJA8DRmd.js +24 -0
- package/lib/vite/traceViewer/assets/wsPort-93o0i57c.js +69 -0
- package/lib/vite/traceViewer/assets/wsPort-qI0zJPR7.js +69 -0
- package/lib/vite/traceViewer/index.LR1HufLs.js +2 -0
- package/lib/vite/traceViewer/index.Ox-CymYJ.js +2 -0
- package/lib/vite/traceViewer/index.html +3 -3
- package/lib/vite/traceViewer/sw.bundle.js +4 -4
- package/lib/vite/traceViewer/uiMode.YGPXSUMv.js +10 -0
- package/lib/vite/traceViewer/uiMode.YYFJGvtV.js +10 -0
- package/lib/vite/traceViewer/uiMode.html +3 -3
- package/package.json +1 -1
package/lib/cli/driver.js
CHANGED
|
@@ -50,15 +50,7 @@ function runDriver() {
|
|
|
50
50
|
});
|
|
51
51
|
const transport = new _transport.PipeTransport(process.stdout, process.stdin);
|
|
52
52
|
transport.onmessage = message => dispatcherConnection.dispatch(JSON.parse(message));
|
|
53
|
-
|
|
54
|
-
const isJavaScriptLanguageBinding = !process.env.PW_LANG_NAME || process.env.PW_LANG_NAME === 'javascript';
|
|
55
|
-
const replacer = !isJavaScriptLanguageBinding && String.prototype.toWellFormed ? (key, value) => {
|
|
56
|
-
if (typeof value === 'string')
|
|
57
|
-
// @ts-expect-error
|
|
58
|
-
return value.toWellFormed();
|
|
59
|
-
return value;
|
|
60
|
-
} : undefined;
|
|
61
|
-
dispatcherConnection.onmessage = message => transport.send(JSON.stringify(message, replacer));
|
|
53
|
+
dispatcherConnection.onmessage = message => transport.send(JSON.stringify(message));
|
|
62
54
|
transport.onclose = () => {
|
|
63
55
|
// Drop any messages during shutdown on the floor.
|
|
64
56
|
dispatcherConnection.onmessage = () => {};
|
package/lib/cli/program.js
CHANGED
|
@@ -3,12 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _utilsBundle.program;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
6
|
+
exports.default = void 0;
|
|
12
7
|
var _fs = _interopRequireDefault(require("fs"));
|
|
13
8
|
var _os = _interopRequireDefault(require("os"));
|
|
14
9
|
var _path = _interopRequireDefault(require("path"));
|
|
@@ -116,10 +111,6 @@ _utilsBundle.program.command('install [browser...]').description('ensure browser
|
|
|
116
111
|
} else {
|
|
117
112
|
const forceReinstall = hasNoArguments ? false : !!options.force;
|
|
118
113
|
await _server.registry.install(executables, forceReinstall);
|
|
119
|
-
await _server.registry.validateHostRequirementsForExecutablesIfNeeded(executables, process.env.PW_LANG_NAME || 'javascript').catch(e => {
|
|
120
|
-
e.name = 'Playwright Host validation warning';
|
|
121
|
-
console.error(e);
|
|
122
|
-
});
|
|
123
114
|
}
|
|
124
115
|
} catch (e) {
|
|
125
116
|
console.log(`Failed to install browsers\n${e}`);
|
|
@@ -579,4 +570,5 @@ function buildBasePlaywrightCLICommand(cliTargetLang) {
|
|
|
579
570
|
return `${packageManagerCommand} playwright`;
|
|
580
571
|
}
|
|
581
572
|
}
|
|
582
|
-
}
|
|
573
|
+
}
|
|
574
|
+
var _default = exports.default = _utilsBundle.program;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.ChannelOwner = void 0;
|
|
7
7
|
var _events = require("events");
|
|
8
8
|
var _validator = require("../protocol/validator");
|
|
9
|
-
var _debugLogger = require("../
|
|
9
|
+
var _debugLogger = require("../common/debugLogger");
|
|
10
10
|
var _stackTrace = require("../utils/stackTrace");
|
|
11
11
|
var _utils = require("../utils");
|
|
12
12
|
var _zones = require("../utils/zones");
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.addSourceUrlToScript = addSourceUrlToScript;
|
|
7
6
|
exports.envObjectToArray = envObjectToArray;
|
|
8
7
|
exports.evaluationScript = evaluationScript;
|
|
9
8
|
var _fs = _interopRequireDefault(require("fs"));
|
|
@@ -47,11 +46,8 @@ async function evaluationScript(fun, arg, addSourceUrl = true) {
|
|
|
47
46
|
if (fun.content !== undefined) return fun.content;
|
|
48
47
|
if (fun.path !== undefined) {
|
|
49
48
|
let source = await _fs.default.promises.readFile(fun.path, 'utf8');
|
|
50
|
-
if (addSourceUrl) source =
|
|
49
|
+
if (addSourceUrl) source += '\n//# sourceURL=' + fun.path.replace(/\n/g, '');
|
|
51
50
|
return source;
|
|
52
51
|
}
|
|
53
52
|
throw new Error('Either path or content property must be present');
|
|
54
|
-
}
|
|
55
|
-
function addSourceUrlToScript(source, path) {
|
|
56
|
-
return `${source}\n//# sourceURL=${path.replace(/\n/g, '')}`;
|
|
57
53
|
}
|
package/lib/client/connection.js
CHANGED
|
@@ -21,7 +21,7 @@ var _playwright = require("./playwright");
|
|
|
21
21
|
var _electron = require("./electron");
|
|
22
22
|
var _stream = require("./stream");
|
|
23
23
|
var _writableStream = require("./writableStream");
|
|
24
|
-
var _debugLogger = require("../
|
|
24
|
+
var _debugLogger = require("../common/debugLogger");
|
|
25
25
|
var _selectors = require("./selectors");
|
|
26
26
|
var _android = require("./android");
|
|
27
27
|
var _artifact = require("./artifact");
|
|
@@ -30,7 +30,7 @@ class ConsoleMessage {
|
|
|
30
30
|
constructor(event) {
|
|
31
31
|
this._page = void 0;
|
|
32
32
|
this._event = void 0;
|
|
33
|
-
this._page =
|
|
33
|
+
this._page = event.page ? _page.Page.from(event.page) : null;
|
|
34
34
|
this._event = event;
|
|
35
35
|
}
|
|
36
36
|
page() {
|
package/lib/client/electron.js
CHANGED
|
@@ -10,7 +10,6 @@ var _channelOwner = require("./channelOwner");
|
|
|
10
10
|
var _clientHelper = require("./clientHelper");
|
|
11
11
|
var _events = require("./events");
|
|
12
12
|
var _jsHandle = require("./jsHandle");
|
|
13
|
-
var _consoleMessage = require("./consoleMessage");
|
|
14
13
|
var _waiter = require("./waiter");
|
|
15
14
|
var _errors = require("./errors");
|
|
16
15
|
let _Symbol$asyncDispose;
|
|
@@ -66,8 +65,6 @@ class ElectronApplication extends _channelOwner.ChannelOwner {
|
|
|
66
65
|
this._isClosed = true;
|
|
67
66
|
this.emit(_events.Events.ElectronApplication.Close);
|
|
68
67
|
});
|
|
69
|
-
this._channel.on('console', event => this.emit(_events.Events.ElectronApplication.Console, new _consoleMessage.ConsoleMessage(event)));
|
|
70
|
-
this._setEventToSubscriptionMapping(new Map([[_events.Events.ElectronApplication.Console, 'console']]));
|
|
71
68
|
}
|
|
72
69
|
process() {
|
|
73
70
|
return this._toImpl().process();
|
package/lib/client/events.js
CHANGED
package/lib/client/frame.js
CHANGED
|
@@ -18,7 +18,6 @@ var _waiter = require("./waiter");
|
|
|
18
18
|
var _events2 = require("./events");
|
|
19
19
|
var _types = require("./types");
|
|
20
20
|
var _network2 = require("../utils/network");
|
|
21
|
-
var _clientHelper = require("./clientHelper");
|
|
22
21
|
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); }
|
|
23
22
|
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; }
|
|
24
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -271,7 +270,7 @@ class Frame extends _channelOwner.ChannelOwner {
|
|
|
271
270
|
};
|
|
272
271
|
if (copy.path) {
|
|
273
272
|
copy.content = (await _fs.default.promises.readFile(copy.path)).toString();
|
|
274
|
-
copy.content =
|
|
273
|
+
copy.content += '//# sourceURL=' + copy.path.replace(/\n/g, '');
|
|
275
274
|
}
|
|
276
275
|
return _elementHandle.ElementHandle.from((await this._channel.addScriptTag({
|
|
277
276
|
...copy
|
package/lib/client/harRouter.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.HarRouter = void 0;
|
|
7
|
-
var _debugLogger = require("../
|
|
7
|
+
var _debugLogger = require("../common/debugLogger");
|
|
8
8
|
let _Symbol$asyncDispose;
|
|
9
9
|
/**
|
|
10
10
|
* Copyright (c) Microsoft Corporation.
|
|
@@ -59,12 +59,6 @@ class HarRouter {
|
|
|
59
59
|
return;
|
|
60
60
|
}
|
|
61
61
|
if (response.action === 'fulfill') {
|
|
62
|
-
// If the response status is -1, the request was canceled or stalled, so we just stall it here.
|
|
63
|
-
// See https://github.com/microsoft/playwright/issues/29311.
|
|
64
|
-
// TODO: it'd be better to abort such requests, but then we likely need to respect the timing,
|
|
65
|
-
// because the request might have been stalled for a long time until the very end of the
|
|
66
|
-
// test when HAR was recorded but we'd abort it immediately.
|
|
67
|
-
if (response.status === -1) return;
|
|
68
62
|
await route.fulfill({
|
|
69
63
|
status: response.status,
|
|
70
64
|
headers: Object.fromEntries(response.headers.map(h => [h.name, h.value])),
|
package/lib/client/page.js
CHANGED
|
@@ -79,7 +79,6 @@ class Page extends _channelOwner.ChannelOwner {
|
|
|
79
79
|
this._closeReason = void 0;
|
|
80
80
|
this._closeWasCalled = false;
|
|
81
81
|
this._harRouters = [];
|
|
82
|
-
this._locatorHandlers = new Map();
|
|
83
82
|
this._browserContext = parent;
|
|
84
83
|
this._timeoutSettings = new _timeoutSettings.TimeoutSettings(this._browserContext._timeoutSettings);
|
|
85
84
|
this.accessibility = new _accessibility.Accessibility(this._channel);
|
|
@@ -116,9 +115,6 @@ class Page extends _channelOwner.ChannelOwner {
|
|
|
116
115
|
this._channel.on('frameDetached', ({
|
|
117
116
|
frame
|
|
118
117
|
}) => this._onFrameDetached(_frame.Frame.from(frame)));
|
|
119
|
-
this._channel.on('locatorHandlerTriggered', ({
|
|
120
|
-
uid
|
|
121
|
-
}) => this._onLocatorHandlerTriggered(uid));
|
|
122
118
|
this._channel.on('route', ({
|
|
123
119
|
route
|
|
124
120
|
}) => this._onRoute(_network2.Route.from(route)));
|
|
@@ -308,25 +304,6 @@ class Page extends _channelOwner.ChannelOwner {
|
|
|
308
304
|
waitUntil
|
|
309
305
|
})).response);
|
|
310
306
|
}
|
|
311
|
-
async addLocatorHandler(locator, handler) {
|
|
312
|
-
if (locator._frame !== this._mainFrame) throw new Error(`Locator must belong to the main frame of this page`);
|
|
313
|
-
const {
|
|
314
|
-
uid
|
|
315
|
-
} = await this._channel.registerLocatorHandler({
|
|
316
|
-
selector: locator._selector
|
|
317
|
-
});
|
|
318
|
-
this._locatorHandlers.set(uid, handler);
|
|
319
|
-
}
|
|
320
|
-
async _onLocatorHandlerTriggered(uid) {
|
|
321
|
-
try {
|
|
322
|
-
const handler = this._locatorHandlers.get(uid);
|
|
323
|
-
await (handler === null || handler === void 0 ? void 0 : handler());
|
|
324
|
-
} finally {
|
|
325
|
-
this._wrapApiCall(() => this._channel.resolveLocatorHandlerNoReply({
|
|
326
|
-
uid
|
|
327
|
-
}), true).catch(() => {});
|
|
328
|
-
}
|
|
329
|
-
}
|
|
330
307
|
async waitForLoadState(state, options) {
|
|
331
308
|
return await this._mainFrame.waitForLoadState(state, options);
|
|
332
309
|
}
|
|
@@ -485,7 +462,8 @@ class Page extends _channelOwner.ChannelOwner {
|
|
|
485
462
|
return result.binary;
|
|
486
463
|
}
|
|
487
464
|
async _expectScreenshot(options) {
|
|
488
|
-
|
|
465
|
+
var _options$screenshotOp, _options$screenshotOp2;
|
|
466
|
+
const mask = (_options$screenshotOp = options.screenshotOptions) !== null && _options$screenshotOp !== void 0 && _options$screenshotOp.mask ? (_options$screenshotOp2 = options.screenshotOptions) === null || _options$screenshotOp2 === void 0 ? void 0 : _options$screenshotOp2.mask.map(locator => ({
|
|
489
467
|
frame: locator._frame._channel,
|
|
490
468
|
selector: locator._selector
|
|
491
469
|
})) : undefined;
|
|
@@ -497,7 +475,10 @@ class Page extends _channelOwner.ChannelOwner {
|
|
|
497
475
|
...options,
|
|
498
476
|
isNot: !!options.isNot,
|
|
499
477
|
locator,
|
|
500
|
-
|
|
478
|
+
screenshotOptions: {
|
|
479
|
+
...options.screenshotOptions,
|
|
480
|
+
mask
|
|
481
|
+
}
|
|
501
482
|
});
|
|
502
483
|
}
|
|
503
484
|
async title() {
|
package/lib/common/socksProxy.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.SocksProxyHandler = exports.SocksProxy = void 0;
|
|
|
7
7
|
exports.parsePattern = parsePattern;
|
|
8
8
|
var _events = _interopRequireDefault(require("events"));
|
|
9
9
|
var _net = _interopRequireDefault(require("net"));
|
|
10
|
-
var _debugLogger = require("
|
|
10
|
+
var _debugLogger = require("./debugLogger");
|
|
11
11
|
var _happyEyeballs = require("../utils/happy-eyeballs");
|
|
12
12
|
var _utils = require("../utils");
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|