async launchBrowser()

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 };
  }