ebc33a78b7
- server/: Node bridge (datarefs/commands, navdata, CIFP procedures, flight plan) - web/: React cockpit (PFD/MFD/Map, VFR six-pack, AFCS, FMS CDU), PWA, collapsible sidebar - desktop/: Tauri 2 launcher (Bun sidecar, system tray, updater) + Linux build via Docker - scripts/: prep-desktop, build-linux, Gitea release + latest.json Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
22 lines
984 B
JavaScript
22 lines
984 B
JavaScript
import { chromium } from 'playwright';
|
|
const browser = await chromium.launch();
|
|
const page = await browser.newPage({ viewport: { width: 1180, height: 820 } });
|
|
page.on('console', (m) => console.log('[console]', m.type(), m.text()));
|
|
page.on('pageerror', (e) => console.log('[pageerror]', e.message));
|
|
await page.goto('http://localhost:8099', { waitUntil: 'networkidle' });
|
|
await page.getByRole('button', { name: 'PFD', exact: true }).click();
|
|
await page.waitForTimeout(5000);
|
|
// report canvas presence + size
|
|
const info = await page.evaluate(() => {
|
|
const c = document.querySelector('.svt-canvas canvas');
|
|
const f = document.querySelector('.svt-pos');
|
|
return {
|
|
hasCanvas: !!c,
|
|
canvasSize: c ? [c.width, c.height] : null,
|
|
svtPos: f ? f.getBoundingClientRect() : null,
|
|
webgl: (() => { try { return !!document.createElement('canvas').getContext('webgl2'); } catch { return false; } })(),
|
|
};
|
|
});
|
|
console.log('[info]', JSON.stringify(info));
|
|
await browser.close();
|