playwright-core
Advanced tools
Comparing version 1.47.0-alpha-2024-08-14 to 1.47.0-alpha-2024-08-15
@@ -67,3 +67,3 @@ "use strict"; | ||
}).then(socket => { | ||
socket.on('secureConnect', () => { | ||
socket.once('secureConnect', () => { | ||
// The server may not respond with ALPN, in which case we default to http/1.1. | ||
@@ -100,4 +100,4 @@ result.resolve(socket.alpnProtocol || 'http/1.1'); | ||
this.target = await (0, _happyEyeballs.createSocket)(rewriteToLocalhostIfNeeded(this.host), this.port); | ||
this.target.on('close', this._targetCloseEventListener); | ||
this.target.on('error', error => this.socksProxy._socksProxy.sendSocketError({ | ||
this.target.once('close', this._targetCloseEventListener); | ||
this.target.once('error', error => this.socksProxy._socksProxy.sendSocketError({ | ||
uid: this.uid, | ||
@@ -148,5 +148,5 @@ error: error.message | ||
}); | ||
(_this$internal2 = this.internal) === null || _this$internal2 === void 0 || _this$internal2.on('close', () => dummyServer.close()); | ||
(_this$internal2 = this.internal) === null || _this$internal2 === void 0 || _this$internal2.once('close', () => dummyServer.close()); | ||
dummyServer.emit('connection', this.internal); | ||
dummyServer.on('secureConnection', internalTLS => { | ||
dummyServer.once('secureConnection', internalTLS => { | ||
_debugLogger.debugLogger.log('client-certificates', `Browser->Proxy ${this.host}:${this.port} chooses ALPN ${internalTLS.alpnProtocol}`); | ||
@@ -171,3 +171,3 @@ let targetTLS = undefined; | ||
const session = _http.default.performServerHandshake(internalTLS); | ||
session.on('stream', stream => { | ||
session.once('stream', stream => { | ||
stream.respond({ | ||
@@ -181,3 +181,3 @@ 'content-type': 'text/html', | ||
}); | ||
stream.on('error', () => closeBothSockets()); | ||
stream.once('error', () => closeBothSockets()); | ||
}); | ||
@@ -209,10 +209,10 @@ } else { | ||
targetTLS = _tls.default.connect(tlsOptions); | ||
targetTLS.on('secureConnect', () => { | ||
targetTLS.once('secureConnect', () => { | ||
internalTLS.pipe(targetTLS); | ||
targetTLS.pipe(internalTLS); | ||
}); | ||
internalTLS.on('end', () => closeBothSockets()); | ||
targetTLS.on('end', () => closeBothSockets()); | ||
internalTLS.on('error', () => closeBothSockets()); | ||
targetTLS.on('error', handleError); | ||
internalTLS.once('end', () => closeBothSockets()); | ||
targetTLS.once('end', () => closeBothSockets()); | ||
internalTLS.once('error', () => closeBothSockets()); | ||
targetTLS.once('error', handleError); | ||
}); | ||
@@ -219,0 +219,0 @@ }); |
@@ -10,3 +10,2 @@ "use strict"; | ||
var _utils = require("../../utils"); | ||
var _eventsHelper = require("../../utils/eventsHelper"); | ||
var network = _interopRequireWildcard(require("../network")); | ||
@@ -57,6 +56,13 @@ var _wkConnection = require("./wkConnection"); | ||
this._wkPages = new Map(); | ||
this._eventListeners = void 0; | ||
this._connection = new _wkConnection.WKConnection(transport, this._onDisconnect.bind(this), options.protocolLogger, options.browserLogsCollector); | ||
this._browserSession = this._connection.browserSession; | ||
this._eventListeners = [_eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.pageProxyCreated', this._onPageProxyCreated.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.pageProxyDestroyed', this._onPageProxyDestroyed.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.provisionalLoadFailed', event => this._onProvisionalLoadFailed(event)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.windowOpen', event => this._onWindowOpen(event)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadCreated', this._onDownloadCreated.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadFilenameSuggested', this._onDownloadFilenameSuggested.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.downloadFinished', this._onDownloadFinished.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, 'Playwright.screencastFinished', this._onScreencastFinished.bind(this)), _eventsHelper.eventsHelper.addEventListener(this._browserSession, _wkConnection.kPageProxyMessageReceived, this._onPageProxyMessageReceived.bind(this))]; | ||
this._browserSession.on('Playwright.pageProxyCreated', this._onPageProxyCreated.bind(this)); | ||
this._browserSession.on('Playwright.pageProxyDestroyed', this._onPageProxyDestroyed.bind(this)); | ||
this._browserSession.on('Playwright.provisionalLoadFailed', event => this._onProvisionalLoadFailed(event)); | ||
this._browserSession.on('Playwright.windowOpen', event => this._onWindowOpen(event)); | ||
this._browserSession.on('Playwright.downloadCreated', this._onDownloadCreated.bind(this)); | ||
this._browserSession.on('Playwright.downloadFilenameSuggested', this._onDownloadFilenameSuggested.bind(this)); | ||
this._browserSession.on('Playwright.downloadFinished', this._onDownloadFinished.bind(this)); | ||
this._browserSession.on('Playwright.screencastFinished', this._onScreencastFinished.bind(this)); | ||
this._browserSession.on(_wkConnection.kPageProxyMessageReceived, this._onPageProxyMessageReceived.bind(this)); | ||
} | ||
@@ -63,0 +69,0 @@ _onDisconnect() { |
@@ -35,3 +35,3 @@ "use strict"; | ||
// and Browser.pageProxyDestroyed for easier management. | ||
const kPageProxyMessageReceived = exports.kPageProxyMessageReceived = 'kPageProxyMessageReceived'; | ||
const kPageProxyMessageReceived = exports.kPageProxyMessageReceived = Symbol('kPageProxyMessageReceived'); | ||
class WKConnection { | ||
@@ -38,0 +38,0 @@ constructor(transport, onDisconnect, protocolLogger, browserLogsCollector) { |
{ | ||
"name": "playwright-core", | ||
"version": "1.47.0-alpha-2024-08-14", | ||
"version": "1.47.0-alpha-2024-08-15", | ||
"description": "A high-level API to automate web browsers", | ||
@@ -5,0 +5,0 @@ "repository": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
102822
7378525