Edit: /opt/canhelp/find_missing_keys.js (990B)
const fs = require('fs');
const content = fs.readFileSync('apps/web/src/lib/translations.ts', 'utf8');
function extractKeys(localeStr) {
const keys = [];
const regex = /'([^']+)':/g;
let m;
while ((m = regex.exec(localeStr)) !== null) {
keys.push(m[1]);
}
return keys;
}
const ruStartStr = ' ru: {';
const ukStartStr = ' uk: {';
const ruIdx = content.indexOf(ruStartStr);
const ukIdx = content.indexOf(ukStartStr);
const lastBrace = content.lastIndexOf(' },');
if (ruIdx === -1 || ukIdx === -1) {
console.error('Indices not found');
process.exit(1);
}
const ruBlock = content.slice(ruIdx, ukIdx);
const ukBlock = content.slice(ukIdx, lastBrace + 4);
const ruKeys = extractKeys(ruBlock);
const ukKeys = new Set(extractKeys(ukBlock));
console.log('RU Keys count:', ruKeys.length);
console.log('UK Keys count:', ukKeys.size);
const missing = ruKeys.filter(k => !ukKeys.has(k));
console.log('Missing in uk:', missing.length);
console.log(missing.join('\n'));