mirror of
https://github.com/vuejs/vue-cli.git
synced 2026-04-30 16:59:31 -05:00
adjust logging
This commit is contained in:
@@ -0,0 +1 @@
|
||||
module.exports = () => {}
|
||||
@@ -1,4 +1,4 @@
|
||||
const { info, error, hasYarn } = require('@vue/cli-shared-utils')
|
||||
const { info, error, hasYarn, clearConsole } = require('@vue/cli-shared-utils')
|
||||
|
||||
module.exports = (api, options) => {
|
||||
api.registerCommand('serve', {
|
||||
@@ -12,6 +12,7 @@ module.exports = (api, options) => {
|
||||
'--https': 'use https'
|
||||
}
|
||||
}, args => {
|
||||
clearConsole()
|
||||
info('Starting development server...')
|
||||
|
||||
api.setEnv(args.env || 'development')
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
const chalk = require('chalk')
|
||||
const padStart = require('string.prototype.padstart')
|
||||
const { logWithSpinner, stopSpinner } = require('./spinner')
|
||||
|
||||
const format = (label, msg) => {
|
||||
return msg.split('\n').map((line, i) => {
|
||||
@@ -9,6 +10,9 @@ const format = (label, msg) => {
|
||||
}).join('\n')
|
||||
}
|
||||
|
||||
exports.logWithSpinner = logWithSpinner
|
||||
exports.stopSpinner = stopSpinner
|
||||
|
||||
exports.info = msg => {
|
||||
console.log(format(chalk.bgBlue.black(' INFO '), msg))
|
||||
}
|
||||
@@ -28,18 +32,14 @@ exports.error = (msg) => {
|
||||
}
|
||||
}
|
||||
|
||||
const cliVersion = require('@vue/cli/package.json').version
|
||||
exports.clearConsole = function () {
|
||||
exports.clearConsole = title => {
|
||||
if (process.stdout.isTTY) {
|
||||
process.stdout.write(
|
||||
process.platform === 'win32' ? '\x1Bc' : '\x1B[2J\x1B[3J\x1B[H'
|
||||
)
|
||||
let title = chalk.bold.green(`Vue CLI v${cliVersion}`)
|
||||
if (process.env.VUE_CLI_DEBUG) {
|
||||
title += ' ' + chalk.bgRed(' DEBUG MODE ')
|
||||
if (title) {
|
||||
console.log(title)
|
||||
}
|
||||
console.log(title)
|
||||
console.log()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"homepage": "https://github.com/vuejs/vue-cli/packages/@vue/cli-shared-utils#readme",
|
||||
"dependencies": {
|
||||
"chalk": "^2.3.0",
|
||||
"ora": "^1.3.0",
|
||||
"string.prototype.padstart": "^3.0.0"
|
||||
},
|
||||
"publishConfig": {
|
||||
|
||||
@@ -18,8 +18,8 @@ exports.logWithSpinner = (symbol, msg) => {
|
||||
spinner.start()
|
||||
}
|
||||
|
||||
exports.stopSpinner = () => {
|
||||
if (lastMsg) {
|
||||
exports.stopSpinner = (persist) => {
|
||||
if (lastMsg && persist !== false) {
|
||||
spinner.stopAndPersist({
|
||||
symbol: lastMsg.symbol,
|
||||
text: lastMsg.text
|
||||
@@ -9,14 +9,11 @@ const Generator = require('./Generator')
|
||||
const installDeps = require('./util/installDeps')
|
||||
const PromptModuleAPI = require('./PromptModuleAPI')
|
||||
const writeFileTree = require('./util/writeFileTree')
|
||||
const { logWithSpinner, stopSpinner } = require('./util/spinner')
|
||||
const updatePackageForDev = require('./util/updatePackageForDev')
|
||||
const { logWithSpinner, stopSpinner } = require('@vue/cli-shared-utils')
|
||||
|
||||
const {
|
||||
error,
|
||||
hasYarn,
|
||||
clearConsole
|
||||
} = require('@vue/cli-shared-utils')
|
||||
const clearConsole = require('./util/clearConsole')
|
||||
const { error, hasYarn } = require('@vue/cli-shared-utils')
|
||||
|
||||
const rcPath = path.join(os.homedir(), '.vuerc')
|
||||
const isMode = _mode => ({ mode }) => _mode === mode
|
||||
@@ -87,7 +84,7 @@ module.exports = class Creator {
|
||||
}, null, 2)
|
||||
})
|
||||
|
||||
// install deps
|
||||
// install plugins
|
||||
logWithSpinner(emoji.get('electric_plug'), `Installing CLI plugins. This might take a while...`)
|
||||
const deps = Object.keys(options.plugins)
|
||||
if (process.env.VUE_CLI_DEBUG) {
|
||||
@@ -98,16 +95,26 @@ module.exports = class Creator {
|
||||
await installDeps(options.packageManager, targetDir, deps)
|
||||
}
|
||||
|
||||
logWithSpinner(emoji.get('gear'), `Invoking generators...`)
|
||||
// run generator
|
||||
logWithSpinner(emoji.get('gear'), `Invoking generators...`)
|
||||
const generator = new Generator(targetDir, options)
|
||||
await generator.generate()
|
||||
|
||||
// install deps again (new deps injected by generators)
|
||||
// install additional deps (injected by generators)
|
||||
logWithSpinner(emoji.get('package'), `Installing additional dependencies...`)
|
||||
await installDeps(options.packageManager, targetDir)
|
||||
|
||||
// log instructions
|
||||
stopSpinner()
|
||||
console.log(`${chalk.green('✔')} Successfully created project ${chalk.yellow(name)}.`)
|
||||
console.log()
|
||||
console.log(`${chalk.green('✔')} Successfully created project ${chalk.yellow(name)} with the following plugins:`)
|
||||
console.log()
|
||||
deps.forEach(dep => {
|
||||
if (dep !== '@vue/cli-service') {
|
||||
dep = dep.replace(/^(@vue\/|vue-)cli-plugin-/, '')
|
||||
console.log(` ${chalk.gray('-')} ${dep}`)
|
||||
}
|
||||
})
|
||||
console.log()
|
||||
console.log(
|
||||
`${emoji.get('point_right')} Get started with the following commands:\n\n` +
|
||||
|
||||
@@ -5,7 +5,13 @@ const rimraf = require('rimraf')
|
||||
const inquirer = require('inquirer')
|
||||
const program = require('commander')
|
||||
const Creator = require('./Creator')
|
||||
const { warn, error, clearConsole } = require('@vue/cli-shared-utils')
|
||||
|
||||
const {
|
||||
warn,
|
||||
error,
|
||||
stopSpinner
|
||||
} = require('@vue/cli-shared-utils')
|
||||
const clearConsole = require('./util/clearConsole')
|
||||
|
||||
async function run () {
|
||||
program
|
||||
@@ -50,4 +56,7 @@ async function run () {
|
||||
await creator.create(projectName, targetDir)
|
||||
}
|
||||
|
||||
run().catch(error)
|
||||
run().catch(err => {
|
||||
stopSpinner(false) // do not persist
|
||||
error(err)
|
||||
})
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
const chalk = require('chalk')
|
||||
const version = require('../../package.json').version
|
||||
const { clearConsole } = require('@vue/cli-shared-utils')
|
||||
|
||||
let title = chalk.bold.green(`Vue CLI v${version}`)
|
||||
if (process.env.VUE_CLI_DEBUG) {
|
||||
title += ' ' + chalk.magenta(' DEBUG MODE ')
|
||||
}
|
||||
|
||||
module.exports = () => clearConsole(title)
|
||||
@@ -9,7 +9,7 @@ module.exports = function updatePackageForDev (targetDir, deps) {
|
||||
deps.forEach(dep => {
|
||||
pkg.devDependencies[dep] = require(path.resolve(
|
||||
__dirname,
|
||||
'../../../',
|
||||
'../../../../',
|
||||
dep,
|
||||
'package.json'
|
||||
)).version
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
"klaw-sync": "^3.0.2",
|
||||
"mkdirp": "^0.5.1",
|
||||
"node-emoji": "^1.8.1",
|
||||
"ora": "^1.3.0",
|
||||
"resolve": "^1.5.0",
|
||||
"rimraf": "^2.6.2",
|
||||
"semver": "^5.4.1"
|
||||
|
||||
Reference in New Issue
Block a user