← back to Quadrille Showroom
scripts/syntax-check.cjs
19 lines
// Parse-only syntax check for the browser JS bundles (no DOM/THREE needed — we just
// compile the source to catch syntax errors).
const fs = require('fs');
const path = require('path');
const vm = require('vm');
const files = ['public/js/showroom.js', 'public/js/viewmodes.js'];
let ok = true;
for (const f of files) {
const src = fs.readFileSync(path.join(__dirname, '..', f), 'utf8');
try {
new vm.Script(src, { filename: f });
console.log('OK ', f);
} catch (e) {
ok = false;
console.log('FAIL ', f, '->', e.message);
}
}
process.exit(ok ? 0 : 1);