import { readFileSync } from 'node:fs'; import path from 'node:path'; import vm from 'node:vm'; import { fileURLToPath } from 'node:url'; import { describe, expect, it } from 'vitest'; const repoRoot = path.resolve( path.dirname(fileURLToPath(import.meta.url)), '..', '..', '..', ); const frameFiles = [ 'iphone-15-pro.html', 'android-pixel.html', 'ipad-pro.html', 'macbook.html', 'browser-chrome.html', ] as const; function frameScriptFor(frameFile: string): string { const html = readFileSync( path.join(repoRoot, 'assets', 'frames', frameFile), 'utf8', ); const script = html.match(/