32 lines
957 B
JavaScript
32 lines
957 B
JavaScript
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
const rootDir = 'd:\\gdfhbfgdbnbdfbdf\\typogenie\\src-tauri\\templates';
|
|
let errorCount = 0;
|
|
let totalCount = 0;
|
|
|
|
function walk(dir) {
|
|
const files = fs.readdirSync(dir, { withFileTypes: true });
|
|
files.forEach(dirent => {
|
|
const fullPath = path.join(dir, dirent.name);
|
|
if (dirent.isDirectory()) {
|
|
walk(fullPath);
|
|
} else if (dirent.name.endsWith('.json')) {
|
|
totalCount++;
|
|
const content = fs.readFileSync(fullPath, 'utf8');
|
|
try {
|
|
JSON.parse(content);
|
|
} catch (e) {
|
|
console.error(`Invalid JSON in: ${fullPath}\nError: ${e.message}`);
|
|
errorCount++;
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
walk(rootDir);
|
|
console.log(`\nValidation complete.`);
|
|
console.log(`Total Templates: ${totalCount}`);
|
|
console.log(`Errors Found: ${errorCount}`);
|
|
if (errorCount > 0) process.exit(1);
|