-
Notifications
You must be signed in to change notification settings - Fork 0
/
rollup.config.ts
58 lines (55 loc) · 1.27 KB
/
rollup.config.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
55
56
57
58
import multi from "rollup-plugin-multi-input";
import { terser } from "rollup-plugin-terser";
import del from "rollup-plugin-delete";
import ts from "@rollup/plugin-typescript";
import json from "@rollup/plugin-json";
import { serve } from "lunox/build";
const production = process.env.NODE_ENV == "production";
const viteEntry = production ? [] : ["entry-server.ts"];
export default [
{
input: [
"index.ts",
"artisan.ts",
...viteEntry,
"bootstrap/*.ts",
"routes/*.ts",
"config/**/*.ts",
"app/Console/**/*.ts",
"app/Model/**/*.ts",
"database/**/*.ts",
],
output: {
dir: "dist",
format: "esm",
},
plugins: [
json(),
production && del({ targets: "dist/*" }),
ts(),
multi(),
production && terser(),
//this will serve application after build completed.
!production && serve(),
],
external: [
"bcryptjs",
"path",
"url",
"fs",
"dotenv",
"http",
"sirv",
"polka",
"vite",
"cors",
"@kodepandai/flydrive",
"@kodepandai/flydrive-s3",
"formidable",
"lunox/dist/entry-client-react.js",
"lunox/dist/entry-server-react.js",
"lunox/dist/helpers.js",
"lunox",
],
},
];