Nuxt/packages/cli/src/setup.js

39 lines
845 B
JavaScript
Raw Normal View History

import consola from 'consola'
import exit from 'exit'
import { fatalBox } from './utils/formatting'
let _setup = false
export default function setup({ dev }) {
// Apply default NODE_ENV if not provided
if (!process.env.NODE_ENV) {
process.env.NODE_ENV = dev ? 'development' : 'production'
}
if (_setup) {
return
}
_setup = true
// Global error handler
/* istanbul ignore next */
process.on('unhandledRejection', (err) => {
consola.error(err)
})
// Exit process on fatal errors
/* istanbul ignore next */
consola.addReporter({
log(logObj) {
if (logObj.type === 'fatal') {
const errorMessage = String(logObj.args[0])
process.stderr.write(fatalBox(errorMessage))
exit(1)
}
}
})
2018-11-08 09:15:56 +00:00
// Wrap all console logs with consola for better DX
consola.wrapConsole()
}