Merge branch '5.4' into 5.5
[GitHub/WoltLab/WCF.git] / extra / compiler.js
CommitLineData
238a4492
TD
1const terser = require("terser");
2const merge = require('deepmerge')
5480a636 3
238a4492 4const terserConfig = {
5480a636
AE
5 compress: {
6 sequences: true,
7 properties: true,
8 dead_code: true,
9 conditionals: true,
10 comparisons: true,
11 booleans: true,
12 loops: true,
13 hoist_funs: true,
14 hoist_vars: true,
15 if_return: true,
16 join_vars: true,
5480a636
AE
17 /* this is basically the `--define` argument */
18 global_defs: {
19 COMPILER_TARGET_DEFAULT: false
20 }
238a4492
TD
21 },
22 format: {
23 comments: false,
5480a636
AE
24 }
25};
26
27module.exports = {
28 compile: (filename, overrides) => {
29 if (overrides === undefined) overrides = {};
238a4492 30 const config = merge(terserConfig, overrides);
5480a636 31
238a4492 32 return terser.minify(
5480a636 33 filename,
238a4492
TD
34 config
35 );
5480a636 36 }
c33f9275 37}