Skip to content

Commit 24db201

Browse files
committed
build:package
1 parent 01a65bd commit 24db201

File tree

5 files changed

+54
-2
lines changed

5 files changed

+54
-2
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
/node_modules
2-
/dist
2+
/dist
3+
/dist-package
File renamed without changes.

build/package.ts

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { mkdir, readdir, readFile, rm, writeFile } from "fs/promises";
2+
import path from "path";
3+
4+
const projectDir = process.env.PROJECT || process.cwd();
5+
const libDir = path.join(projectDir, "dist", "lib");
6+
const templateDir = path.join(projectDir, "package-template");
7+
const packageDir = path.join(projectDir, "dist-package");
8+
9+
async function main() {
10+
await rm(packageDir, {
11+
force: true,
12+
recursive: true,
13+
});
14+
await mkdir(packageDir, {
15+
recursive: true,
16+
});
17+
18+
// copy package template
19+
// copy lib files
20+
const files = (await readdir(libDir))
21+
.map((libFile) => path.join(libDir, libFile))
22+
.concat(
23+
(await readdir(templateDir)).map((file) => path.join(templateDir, file))
24+
);
25+
await Promise.all(
26+
files.map(async (libFile) => {
27+
await writeFile(
28+
path.join(packageDir, path.basename(libFile)),
29+
await readFile(libFile)
30+
);
31+
})
32+
);
33+
}
34+
35+
main().catch((err) => {
36+
console.error(err);
37+
process.exit(1);
38+
});

package-template/package.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"name": "better-typescript-lib",
3+
"version": "0.0.1",
4+
"description": "Better TypeScript standard library",
5+
"main": "index.js",
6+
"types": "./lib.esnext.d.ts",
7+
"keywords": [
8+
"TypeScript"
9+
],
10+
"author": "uhyo <uhyo@uhy.ooo>",
11+
"license": "MIT"
12+
}

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
},
1212
"scripts": {
1313
"build:tsc": "tsc",
14-
"build:lib": "node dist/build/index.js",
14+
"build:lib": "node dist/build/build.js",
15+
"build:package": "node dist/build/package.js",
1516
"test": "tsd"
1617
},
1718
"keywords": [],

0 commit comments

Comments
 (0)