-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrollup.config.js
46 lines (39 loc) · 996 Bytes
/
rollup.config.js
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
import typescript from '@rollup/plugin-typescript';
import {terser} from 'rollup-plugin-terser';
import run from '@rollup/plugin-run';
import frontend from './rollup.frontend.config';
const isWatchMode = process.env['ROLLUP_WATCH'] === 'true';
const isDev = process.env['NODE_ENV'] === 'development';
const backend = {
input: 'src/main.ts',
output: [{
dir: 'dist',
format: 'es',
// Use terser for production only
plugins: [!isDev && terser()],
sourcemap: true,
}],
external: [
'path',
'url',
'eta',
'fast-glob',
'fastify',
'fastify-static',
'mnemonist/lru-cache.js',
'point-of-view',
],
plugins: [
typescript(),
isWatchMode && run({
execArgv: ['-r', 'source-map-support/register']
}),
],
watch: {
chokidar: true,
// include and exclude govern which files to watch. by
// default, all dependencies will be watched
exclude: ['node_modules/**'],
},
};
export default [frontend, backend];