1
1
mirror of https://github.com/leon-ai/leon.git synced 2024-12-03 02:45:21 +03:00
leon/scripts/lint.js

56 lines
1.3 KiB
JavaScript
Raw Normal View History

import { command } from 'execa'
2019-02-10 15:26:50 +03:00
import { LogHelper } from '@/helpers/log-helper'
import { LoaderHelper } from '@/helpers/loader-helper'
2019-02-10 15:26:50 +03:00
2022-09-16 23:36:45 +03:00
const globs = [
'"app/src/js/*.{ts,js}"',
// TODO: deal with it once handling new hotword
// '"hotword/index.{ts,js}"',
// TODO: put it back once tests have been reintroduced into skills
// '"skills/**/*.js"',
'"scripts/**/*.{ts,js}"',
'"server/src/**/*.{ts,js}"'
// TODO: put it back once tests need to be written
/*'"test/!*.js"',
'"test/e2e/!**!/!*.js"',
'"test/json/!**!/!*.js"',
'"test/unit/!**!/!*.js"'*/
]
const src = globs.join(' ')
async function prettier() {
await command('prettier --write . --ignore-path .gitignore', {
shell: true
})
await command(`prettier --check ${src} --ignore-path .gitignore`, {
shell: true,
stdio: 'inherit'
})
}
2019-02-10 15:26:50 +03:00
/**
* This script ensures the correct coding syntax of the whole project
*/
2022-09-03 14:12:41 +03:00
;(async () => {
LoaderHelper.start()
LogHelper.info('Linting...')
2019-02-10 15:26:50 +03:00
try {
2022-09-16 23:36:45 +03:00
await Promise.all([
prettier(),
command(`eslint ${src} --ignore-path .gitignore`, {
shell: true,
stdio: 'inherit'
})
])
2019-02-10 15:26:50 +03:00
LogHelper.success('Looks great')
LoaderHelper.stop()
2019-02-10 15:26:50 +03:00
} catch (e) {
LogHelper.error(`Does not look great: ${e.message}`)
LoaderHelper.stop()
2019-02-10 15:26:50 +03:00
process.exit(1)
}
})()