in electron/browserManager.ts [50:72]
async launchBrowser() {
const browser = await chromium.launch({
headless: IS_TEST_ENV,
executablePath: EXECUTABLE_PATH,
chromiumSandbox: true,
args: IS_TEST_ENV ? [`--remote-debugging-port=${CDP_TEST_PORT}`] : [],
});
const context = await browser.newContext();
this._browser = browser;
this._context = context;
context.on('page', page => {
page.on('close', async () => {
const hasPage = browser.contexts().some(context => context.pages().length > 0);
if (hasPage) {
return;
}
await this.closeBrowser();
});
});
return { browser, context };
}