| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- import fs from 'fs'
- import chalk from 'chalk'
- import _ from 'lodash'
- const DIR = '../src/locale/'
- const readKeys = text => {
- return text.match(/ {2}(format\w*) \(/g)
- .map(it => it.replace(' ', '').replace(' (', ''))
- }
- const baseText = fs.readFileSync(DIR + 'bootstrap-table-en-US.js').toString()
- const baseKeys = readKeys(baseText)
- fs.readdir(`${DIR}`, (err, files) => {
- let errorSum = 0
- for (const file of files) {
- if (!/\.js$/.test(file) || file === 'bootstrap-table-en-US.js') {
- continue
- }
- const text = fs.readFileSync(DIR + file).toString()
- const keys = readKeys(text)
- let offset = 0
- const errors = []
- for (const [i, key] of baseKeys.entries()) {
- if (!keys.includes(key)) {
- errors.push(chalk.red(`Missing key: '${key}'`))
- offset++
- } else if (keys[i - offset] !== key) {
- errors.push(chalk.red(`Order error: '${key}'`))
- }
- }
- errorSum += errors.length
- if (errors.length > 0) {
- console.log('-------------------------')
- console.log(`Checking file: ${file}`)
- console.log('-------------------------')
- errors.forEach((error) => {
- console.log(error)
- })
- }
- }
- if (errorSum === 0) {
- console.log('Good job! Anything up to date!')
- process.exit(0)
- }
- process.exit(1)
- })
|