Skip to content

Commit 7ae0c52

Browse files
chore(scripts): cleanup create-package script (#8862)
Co-authored-by: Noel <[email protected]>
1 parent 7332b7b commit 7ae0c52

File tree

3 files changed

+541
-595
lines changed

3 files changed

+541
-595
lines changed

packages/scripts/src/createPackage.ts

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,23 @@ interface LabelerData {
1212
}
1313

1414
export 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
}

packages/scripts/src/template/template.package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,16 @@
4545
"devDependencies": {
4646
"@favware/cliff-jumper": "^1.8.8",
4747
"@microsoft/api-extractor": "^7.32.0",
48-
"@types/node": "^16.11.64",
49-
"@vitest/coverage-c8": "^0.24.1",
48+
"@types/node": "^16.18.3",
49+
"@vitest/coverage-c8": "^0.25.3",
5050
"cross-env": "^7.0.3",
51-
"eslint": "^8.25.0",
52-
"eslint-config-neon": "^0.1.38",
51+
"eslint": "^8.28.0",
52+
"eslint-config-neon": "^0.1.40",
5353
"eslint-formatter-pretty": "^4.1.0",
54-
"prettier": "^2.7.1",
55-
"tsup": "^6.2.3",
56-
"typescript": "^4.8.4",
57-
"vitest": "^0.24.1"
54+
"prettier": "^2.8.0",
55+
"tsup": "^6.5.0",
56+
"typescript": "^4.9.3",
57+
"vitest": "^0.25.3"
5858
},
5959
"engines": {
6060
"node": ">=16.9.0"

0 commit comments

Comments
 (0)