summaryrefslogtreecommitdiff
path: root/app/lib/playwright.server.ts
blob: aadb5d31d64c6a1e4163290456ccf69f0471dd2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { chromium, type Browser } from "playwright";

let _browser: Browser | null = null;

export async function getBrowser(): Promise<Browser> {
  if (!_browser || !_browser.isConnected()) {
    _browser = await chromium.launch({ headless: true });
  }
  return _browser;
}

export async function closeBrowser(): Promise<void> {
  if (_browser) {
    await _browser.close();
    _browser = null;
  }
}