/
build_npm.ts
executable file
·54 lines (48 loc) · 1.61 KB
/
build_npm.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/usr/bin/env -S deno run --allow-read --allow-write=./,/Users/qwtel/Library/Caches/deno --allow-net --allow-env=HOME,DENO_AUTH_TOKENS,DENO_DIR --allow-run=git,pnpm
// ex. scripts/build_npm.ts
import { basename, extname } from "https://deno.land/std@0.133.0/path/mod.ts";
import { build, emptyDir } from "https://deno.land/x/dnt/mod.ts";
import {
latestVersion, copyMdFiles, getDescription, getGHTopics, getGHLicense, getGHHomepage,
} from 'https://gist.githubusercontent.com/qwtel/ecf0c3ba7069a127b3d144afc06952f5/raw/latest-version.ts'
await emptyDir("./npm");
const name = basename(Deno.cwd())
await build({
entryPoints: ["./index.ts"],
outDir: "./npm",
shims: {},
test: false,
package: {
// package.json properties
name: `@worker-tools/${name}`,
version: await latestVersion(),
description: await getDescription(),
license: await getGHLicense(name) ?? 'MIT',
publishConfig: {
access: "public"
},
author: "Florian Klampfer <mail@qwtel.com> (https://qwtel.com/)",
repository: {
type: "git",
url: `git+https://github.com/worker-tools/${name}.git`,
},
bugs: {
url: `https://github.com/worker-tools/${name}/issues`,
},
homepage: await getGHHomepage(name) ?? `https://github.com/worker-tools/${name}#readme`,
keywords: await getGHTopics(name) ?? [],
},
packageManager: 'pnpm',
compilerOptions: {
sourceMap: true,
target: 'ES2019'
},
mappings: {
"https://ghuc.cc/qwtel/whatwg-stream-to-async-iter/index.ts": {
name: "whatwg-stream-to-async-iter",
version: "^0.5.0",
},
},
});
// post build steps
await copyMdFiles()