-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtsup.config.ts
More file actions
63 lines (61 loc) · 1.25 KB
/
tsup.config.ts
File metadata and controls
63 lines (61 loc) · 1.25 KB
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
55
56
57
58
59
60
61
62
63
import dotenv from "dotenv";
import { resolve } from "path";
import { type Options, defineConfig } from "tsup";
function createTsupConfig({
entry = ["src/bin/nf.ts"],
external = [],
noExternal = [],
platform = "node",
format = ["esm"],
target = "esnext",
skipNodeModulesBundle = true,
clean = true,
shims = format.includes("cjs"),
cjsInterop = format.includes("cjs"),
minify = false,
terserOptions = {
mangle: false,
keep_classnames: true,
keep_fnames: true,
},
splitting = false,
keepNames = true,
dts = true,
sourcemap = true,
esbuildPlugins = [],
treeshake = false,
outDir = "dist",
env = dotenv.config({
path: resolve(
process.cwd(),
process.env.NODE_ENV === "development" ? ".env.build.local" : ".env.build",
),
}).parsed,
}: Options = {}) {
return defineConfig({
entry,
external,
noExternal,
platform,
format,
skipNodeModulesBundle,
target,
clean,
shims,
cjsInterop,
minify,
terserOptions,
splitting,
keepNames,
dts,
sourcemap,
esbuildPlugins,
treeshake,
outDir,
env,
});
}
export default [
createTsupConfig({ dts: false, sourcemap: false }),
createTsupConfig({ entry: ["src/command/command.loader.ts"] }),
];