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);
