const fs = require('fs') const path = require('path') const check = process.argv.includes('--check') const dictsPath = path.resolve(__dirname, '..', '..', 'third_party', 'hunspell_dictionaries') const gclientPath = 'third_party/hunspell_dictionaries' const allFiles = fs.readdirSync(dictsPath) const dictionaries = allFiles .filter(file => path.extname(file) === '.bdic') const licenses = allFiles .filter(file => file.startsWith('LICENSE') || file.startsWith('COPYING')) const content = `hunspell_dictionaries = [ ${dictionaries.map(f => `"//${path.posix.join(gclientPath, f)}"`).join(',\n ')}, ] hunspell_licenses = [ ${licenses.map(f => `"//${path.posix.join(gclientPath, f)}"`).join(',\n ')}, ] ` const filenamesPath = path.resolve(__dirname, '..', 'filenames.hunspell.gni') if (check) { const currentContent = fs.readFileSync(filenamesPath, 'utf8') if (currentContent !== content) { throw new Error('hunspell filenames need to be regenerated, latest generation does not match current file. Please run node gen-hunspell-filenames.js') } } else { fs.writeFileSync(filenamesPath, content) }