1
1
const path = require ( 'path' ) ;
2
2
const webpack = require ( 'webpack' ) ;
3
+ const TerserPlugin = require ( 'terser-webpack-plugin' ) ;
3
4
4
5
module . exports = {
5
6
entry : './scalene-gui.js' ,
@@ -11,30 +12,43 @@ module.exports = {
11
12
} ,
12
13
resolve : {
13
14
fallback : {
14
- " crypto" : require . resolve ( " crypto-browserify" ) ,
15
- " stream" : require . resolve ( " stream-browserify" ) ,
16
- " buffer" : require . resolve ( " buffer" ) ,
17
- " util" : require . resolve ( " util" ) ,
18
- " assert" : require . resolve ( " assert" ) ,
19
- "os" : require . resolve ( " os-browserify/browser" ) ,
20
- " http" : require . resolve ( " stream-http" ) ,
21
- " https" : require . resolve ( " https-browserify" ) ,
22
- " url" : require . resolve ( " url/" ) ,
23
- " zlib" : require . resolve ( " browserify-zlib" ) ,
24
- " path" : require . resolve ( " path-browserify" ) ,
25
- "fs" : false ,
15
+ crypto : require . resolve ( ' crypto-browserify' ) ,
16
+ stream : require . resolve ( ' stream-browserify' ) ,
17
+ buffer : require . resolve ( ' buffer' ) ,
18
+ util : require . resolve ( ' util' ) ,
19
+ assert : require . resolve ( ' assert' ) ,
20
+ os : require . resolve ( ' os-browserify/browser' ) ,
21
+ http : require . resolve ( ' stream-http' ) ,
22
+ https : require . resolve ( ' https-browserify' ) ,
23
+ url : require . resolve ( ' url/' ) ,
24
+ zlib : require . resolve ( ' browserify-zlib' ) ,
25
+ path : require . resolve ( ' path-browserify' ) ,
26
+ fs : false ,
26
27
} ,
27
28
} ,
28
29
plugins : [
29
30
new webpack . ProvidePlugin ( {
30
31
process : 'process/browser' ,
31
32
} ) ,
33
+ new webpack . DefinePlugin ( {
34
+ 'process.env.LANG' : JSON . stringify ( 'en_US.UTF-8' ) ,
35
+ } ) ,
32
36
] ,
33
37
optimization : {
34
- minimize : true , // Enable minimization
35
- usedExports : false , // Disable tree shaking
36
- sideEffects : false , // Include all files, assuming they have side effects
37
- concatenateModules : false , // Disable module concatenation (scope hoisting)
38
- innerGraph : false , // Disable inner graph analysis
38
+ minimize : true ,
39
+ minimizer : [
40
+ new TerserPlugin ( {
41
+ terserOptions : {
42
+ output : {
43
+ ascii_only : true , // Escape non-ASCII characters
44
+ } ,
45
+ } ,
46
+ } ) ,
47
+ ] ,
48
+ usedExports : false ,
49
+ sideEffects : false ,
50
+ concatenateModules : false ,
51
+ innerGraph : false ,
39
52
} ,
53
+ devtool : 'source-map' , // Enable debugging via source maps
40
54
} ;
0 commit comments