@@ -42,6 +42,8 @@ export default async function create(argv: yargs.Arguments<any>) {
4242 // Ignore error
4343 }
4444
45+ const basename = path . basename ( argv . name ) ;
46+
4547 const {
4648 slug,
4749 description,
@@ -53,9 +55,15 @@ export default async function create(argv: yargs.Arguments<any>) {
5355 {
5456 type : 'input' ,
5557 name : 'slug' ,
56- message : "What is the name of the package? (e.g. 'react-native-magic')" ,
57- default : path . basename ( argv . name ) ,
58- validate : input => validateNpmPackage ( input ) . validForNewPackages ,
58+ message : 'What is the name of the npm package?' ,
59+ default : validateNpmPackage ( basename ) . validForNewPackages
60+ ? / ^ ( @ | r e a c t - n a t i v e ) / . test ( basename )
61+ ? basename
62+ : `react-native-${ basename } `
63+ : undefined ,
64+ validate : input =>
65+ validateNpmPackage ( input ) . validForNewPackages ||
66+ 'Must be a valid npm package name' ,
5967 } ,
6068 {
6169 type : 'input' ,
@@ -75,7 +83,8 @@ export default async function create(argv: yargs.Arguments<any>) {
7583 name : 'authorEmail' ,
7684 message : 'What is the email address for the package author?' ,
7785 default : email ,
78- validate : input => input . includes ( '@' ) ,
86+ validate : input =>
87+ / ^ \S + @ \S + $ / . test ( input ) || 'Must be a valid email address' ,
7988 } ,
8089 {
8190 type : 'input' ,
@@ -92,7 +101,7 @@ export default async function create(argv: yargs.Arguments<any>) {
92101
93102 return undefined ;
94103 } ,
95- validate : input => / ^ h t t p s ? : \/ \/ / . test ( input ) ,
104+ validate : input => / ^ h t t p s ? : \/ \/ / . test ( input ) || 'Must be a valid URL' ,
96105 } ,
97106 {
98107 type : 'input' ,
@@ -107,7 +116,7 @@ export default async function create(argv: yargs.Arguments<any>) {
107116
108117 return undefined ;
109118 } ,
110- validate : input => / ^ h t t p s ? : \/ \/ / . test ( input ) ,
119+ validate : input => / ^ h t t p s ? : \/ \/ / . test ( input ) || 'Must be a valid URL' ,
111120 } ,
112121 ] ) ) as {
113122 slug : string ;
0 commit comments