2020-05-28 10:23:10 +02:00
|
|
|
// eslint-disable-next-line import/no-extraneous-dependencies
|
2019-07-19 21:55:30 +02:00
|
|
|
import validateProjectName from 'validate-npm-package-name'
|
|
|
|
|
|
|
|
export function validateNpmName(
|
|
|
|
name: string
|
|
|
|
): { valid: boolean; problems?: string[] } {
|
|
|
|
const nameValidation = validateProjectName(name)
|
|
|
|
if (nameValidation.validForNewPackages) {
|
|
|
|
return { valid: true }
|
|
|
|
}
|
|
|
|
|
|
|
|
return {
|
|
|
|
valid: false,
|
|
|
|
problems: [
|
|
|
|
...(nameValidation.errors || []),
|
|
|
|
...(nameValidation.warnings || []),
|
|
|
|
],
|
|
|
|
}
|
|
|
|
}
|