@@ -47,6 +47,7 @@ module.exports = env => {
47
47
uglify, // --env.uglify
48
48
report, // --env.report
49
49
sourceMap, // --env.sourceMap
50
+ hiddenSourceMap, // --env.hiddenSourceMap
50
51
hmr, // --env.hmr,
51
52
unitTesting, // --env.unitTesting
52
53
} = env ;
@@ -96,6 +97,13 @@ module.exports = env => {
96
97
additionalLazyModuleResources : additionalLazyModuleResources
97
98
} ) ;
98
99
100
+ let sourceMapFilename = "[file].map" ;
101
+ if ( typeof hiddenSourceMap === "string" ) {
102
+ sourceMapFilename = join ( relative ( dist , __dirname ) , hiddenSourceMap , "[file].map" ) ;
103
+ } else if ( typeof hiddenSourceMap === "boolean" && ! ! hiddenSourceMap ) {
104
+ sourceMapFilename = join ( relative ( dist , __dirname ) , "sourceMap" , "[file].map" ) ;
105
+ }
106
+
99
107
const config = {
100
108
mode : uglify ? "production" : "development" ,
101
109
context : appFullPath ,
@@ -112,6 +120,7 @@ module.exports = env => {
112
120
output : {
113
121
pathinfo : false ,
114
122
path : dist ,
123
+ sourceMapFilename,
115
124
libraryTarget : "commonjs2" ,
116
125
filename : "[name].js" ,
117
126
globalObject : "global" ,
@@ -142,7 +151,7 @@ module.exports = env => {
142
151
"fs" : "empty" ,
143
152
"__dirname" : false ,
144
153
} ,
145
- devtool : sourceMap ? "inline-source-map" : "none" ,
154
+ devtool : hiddenSourceMap ? "hidden-source-map" : ( sourceMap ? "inline-source-map" : "none" ) ,
146
155
optimization : {
147
156
runtimeChunk : "single" ,
148
157
splitChunks : {
@@ -164,7 +173,7 @@ module.exports = env => {
164
173
new UglifyJsPlugin ( {
165
174
parallel : true ,
166
175
cache : true ,
167
- sourceMap : ! ! sourceMap ,
176
+ sourceMap : ! ! sourceMap || ! ! hiddenSourceMap ,
168
177
uglifyOptions : {
169
178
output : {
170
179
comments : false ,
0 commit comments