Skip to content

Commit 6ff7466

Browse files
committed
fix: validate project name
ISSUE: #1024 Add validate-npm-package-name.
1 parent 11956ac commit 6ff7466

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

packages/@vue/cli/lib/create.js

+6
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,18 @@ const inquirer = require('inquirer')
66
const Creator = require('./Creator')
77
const clearConsole = require('./util/clearConsole')
88
const { error, stopSpinner } = require('@vue/cli-shared-utils')
9+
const validateProjectName = require('validate-npm-package-name')
910

1011
async function create (projectName, options) {
1112
const inCurrent = projectName === '.'
1213
const name = inCurrent ? path.relative('../', process.cwd()) : projectName
1314
const targetDir = path.resolve(projectName || '.')
1415

16+
if (!validateProjectName(projectName).validForNewPackages) {
17+
console.error(chalk.red(`Could not be created because ${projectName} is an invalid name.`))
18+
process.exit(1)
19+
}
20+
1521
if (fs.existsSync(targetDir)) {
1622
if (options.force) {
1723
rimraf.sync(targetDir)

packages/@vue/cli/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
"rimraf": "^2.6.2",
5252
"semver": "^5.4.1",
5353
"slash": "^1.0.0",
54+
"validate-npm-package-name": "^3.0.0",
5455
"yaml-front-matter": "^3.4.1"
5556
},
5657
"engines": {

0 commit comments

Comments
 (0)