const fs = require('fs'); const path = require('path'); function walk(dir) { let results = []; const list = fs.readdirSync(dir); list.forEach(function(file) { file = path.join(dir, file); const stat = fs.statSync(file); if (stat && stat.isDirectory()) { results = results.concat(walk(file)); } else { if (file.endsWith('.tsx') || file.endsWith('.ts')) { results.push(file); } } }); return results; } const files = walk(path.join(__dirname, 'src/renderer')); let count = 0; files.forEach(file => { let content = fs.readFileSync(file, 'utf8'); if (content.includes('d3roRadius')) { const importRegex = /import\s+\{([^}]*)\}\s+from\s+['"]@d3ro\/ui\/theme['"]/; const match = importRegex.exec(content); if (match && !match[1].includes('d3roRadius')) { const existing = match[1].trim(); const newImport = existing ? existing + ', d3roRadius' : 'd3roRadius'; content = content.replace(importRegex, import { } from '@d3ro/ui/theme'); fs.writeFileSync(file, content, 'utf8'); console.log('Fixed', file); count++; } else if (!match) { content = import { d3roRadius } from '@d3ro/ui/theme';\n + content; fs.writeFileSync(file, content, 'utf8'); console.log('Added new import to', file); count++; } } }); console.log('Total fixed:', count);