ported all templates to json
This commit is contained in:
50
fix_templates.cjs
Normal file
50
fix_templates.cjs
Normal file
@@ -0,0 +1,50 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
const rootDir = 'd:\\gdfhbfgdbnbdfbdf\\typogenie\\src-tauri\\templates';
|
||||
|
||||
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')) {
|
||||
let content = fs.readFileSync(fullPath, 'utf8');
|
||||
let changed = false;
|
||||
|
||||
// Fix invalid "white" color
|
||||
if (content.includes('"color": "white"')) {
|
||||
content = content.replace(/"color": "white"/g, '"color": "background"');
|
||||
changed = true;
|
||||
}
|
||||
if (content.includes('"background": "white"')) {
|
||||
content = content.replace(/"background": "white"/g, '"background": "background"');
|
||||
changed = true;
|
||||
}
|
||||
|
||||
// Fix border alignment from nested "border": { "bottom": ... } to "borderBottom": ...
|
||||
// This is a bit tricky with regex but let's try a simple one for the common cases
|
||||
const borderSides = ['top', 'bottom', 'left', 'right'];
|
||||
borderSides.forEach(side => {
|
||||
const searchStr = new RegExp(`"border":\\s*{\\s*"${side}":\\s*{([^}]*)}`, 'g');
|
||||
// Capture the content inside the side object
|
||||
if (searchStr.test(content)) {
|
||||
content = content.replace(searchStr, (match, p1) => {
|
||||
const capitalizedSide = side.charAt(0).toUpperCase() + side.slice(1);
|
||||
return `"border${capitalizedSide}": {${p1}}`;
|
||||
});
|
||||
changed = true;
|
||||
}
|
||||
});
|
||||
|
||||
if (changed) {
|
||||
fs.writeFileSync(fullPath, content, { encoding: 'utf8' });
|
||||
console.log(`Updated: ${fullPath}`);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
walk(rootDir);
|
||||
console.log('Finished mass-correction of templates.');
|
||||
Reference in New Issue
Block a user