@@ -12,21 +12,23 @@ interface LabelerData {
1212}
1313
1414export async function createPackage ( packageName : string , packageDescription ?: string ) {
15+ const packageDir = join ( 'packages' , packageName ) ;
16+
1517 // Make directory for package
16- await mkdir ( `packages/ ${ packageName } ` ) ;
18+ await mkdir ( packageDir ) ;
1719
1820 // Change to subdirectory
19- chdir ( `packages/ ${ packageName } ` ) ;
21+ chdir ( packageDir ) ;
2022
2123 // Create folder structure
2224 await Promise . all ( [ mkdir ( 'src' ) , mkdir ( '__tests__' ) ] ) ;
2325
24- // Create files
25- await writeFile ( 'src/index.ts' , `console.log('Hello, from @discord.js/${ packageName } ');` ) ;
26-
27- await writeFile ( '.eslintrc.json' , await readFile ( '../scripts/src/template/template.eslintrc.json' , 'utf8' ) ) ;
26+ const templateDir = join ( '..' , 'scripts' , 'src' , 'template' ) ;
2827
29- await writeFile ( '.lintstagedrc.js' , await readFile ( '../scripts/src/template/template.lintstagedrc.js' , 'utf8' ) ) ;
28+ // Create files
29+ await writeFile ( join ( 'src' , 'index.ts' ) , `console.log('Hello, from @discordjs/${ packageName } ');` ) ;
30+ await writeFile ( '.eslintrc.json' , await readFile ( join ( templateDir , 'template.eslintrc.json' ) , 'utf8' ) ) ;
31+ await writeFile ( '.lintstagedrc.js' , await readFile ( join ( templateDir , 'template.lintstagedrc.js' ) , 'utf8' ) ) ;
3032
3133 const packageJSON = {
3234 ...templateJSON ,
@@ -41,10 +43,7 @@ export async function createPackage(packageName: string, packageDescription?: st
4143 await writeFile ( `package.json` , JSON . stringify ( packageJSON , null , 2 ) ) ;
4244
4345 // Update cliff.toml
44- const cliffTOML = ( await readFile ( join ( '..' , 'scripts/src/template/cliff.toml' ) , 'utf8' ) ) . replace (
45- '{name}' ,
46- packageName ,
47- ) ;
46+ const cliffTOML = ( await readFile ( join ( templateDir , 'cliff.toml' ) , 'utf8' ) ) . replace ( '{name}' , packageName ) ;
4847
4948 await writeFile ( 'cliff.toml' , cliffTOML ) ;
5049
@@ -54,7 +53,7 @@ export async function createPackage(packageName: string, packageDescription?: st
5453 await writeFile ( '.cliff-jumperrc.json' , JSON . stringify ( newCliffJumperJSON , null , 2 ) ) ;
5554
5655 // Move to github directory
57- chdir ( '../../ .github' ) ;
56+ chdir ( join ( '..' , '..' , ' .github') ) ;
5857
5958 const labelsYAML = parseYAML ( await readFile ( 'labels.yml' , 'utf8' ) ) as LabelerData [ ] ;
6059 labelsYAML . push ( { name : `packages:${ packageName } ` , color : 'fbca04' } ) ;
@@ -70,5 +69,5 @@ export async function createPackage(packageName: string, packageDescription?: st
7069 chdir ( '..' ) ;
7170
7271 // Copy default files over
73- await copy ( 'packages/ scripts/ src/ template/ default' , `packages/ ${ packageName } ` ) ;
72+ await copy ( join ( 'packages' , ' scripts' , ' src' , ' template' , ' default') , packageDir ) ;
7473}
0 commit comments