const fs = require('fs'); const path = require('path'); const templatesDirs = [ 'd:\\gdfhbfgdbnbdfbdf\\typogenie\\src-tauri\\target\\debug\\templates', 'd:\\gdfhbfgdbnbdfbdf\\typogenie\\src-tauri\\target\\release\\templates' ]; const ids = new Map(); // id -> filename function scanDir(dir) { if (!fs.existsSync(dir)) { console.log(`Directory not found: ${dir}`); return; } console.log(`Scanning: ${dir}`); const files = fs.readdirSync(dir, { withFileTypes: true }); files.forEach(dirent => { const fullPath = path.join(dir, dirent.name); if (dirent.isDirectory()) { scanDir(fullPath); } else if (dirent.name.endsWith('.json')) { try { const content = fs.readFileSync(fullPath, 'utf8'); const json = JSON.parse(content); // Handle array or object const template = Array.isArray(json) ? json[0] : json; if (template.id) { if (ids.has(template.id)) { console.error(`[DUPLICATE ID] ${template.id} found in ${dirent.name} AND ${ids.get(template.id)}`); } else { ids.set(template.id, dirent.name); console.log(`[OK] ${dirent.name} (ID: ${template.id})`); } } else { console.error(`[MISSING ID] ${dirent.name}`); } } catch (e) { console.error(`[FAIL] ${dirent.name}: ${e.message}`); } } }); } // Only scan one directory (debug) to check for uniqueness within the app load scanDir('d:\\gdfhbfgdbnbdfbdf\\typogenie\\src-tauri\\target\\debug\\templates');