import fs from 'node:fs';import vm from 'node:vm';import assert from 'node:assert/strict';import path from 'node:path';import {fileURLToPath} from 'node:url'; const here=path.dirname(fileURLToPath(import.meta.url));const html=fs.readFileSync(path.join(here,'index.html'),'utf8'),plan=JSON.parse(fs.readFileSync(path.join(here,'demo-design.json'),'utf8'));const checks=[];const elements=new Map();class Element{constructor(){this.value='';this.children=[];this.handlers={};this.innerHTML='';this.textContent='';}appendChild(x){this.children.push(x);}addEventListener(k,f){this.handlers[k]=f;}}const get=id=>{if(!elements.has(id))elements.set(id,new Element());return elements.get(id);};const context=vm.createContext({document:{getElementById:get,createElement:()=>new Element()},console,Blob,URL,setTimeout});const script=html.match(/