@@ -175,67 +175,28 @@ WebpackOptionsApply.prototype.process = function(options, compiler) {
175175 compiler . apply ( new EvalDevToolModulePlugin ( "//# sourceURL=[url]" , options . output . devtoolModuleFilenameTemplate ) ) ;
176176 else if ( options . devtool === "#@eval" )
177177 compiler . apply ( new EvalDevToolModulePlugin ( "//@ sourceURL=[url]\n//# sourceURL=[url]" , options . output . devtoolModuleFilenameTemplate ) ) ;
178- else if ( options . devtool === "hidden-sourcemap" || options . devtool === "hidden-source-map" )
179- compiler . apply ( new SourceMapDevToolPlugin ( options . output . sourceMapFilename , false , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
180- else if ( options . devtool === "sourcemap" || options . devtool === "source-map" )
181- compiler . apply ( new SourceMapDevToolPlugin ( options . output . sourceMapFilename , null , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
182- else if ( options . devtool === "@sourcemap" || options . devtool === "@source-map" )
183- compiler . apply ( new SourceMapDevToolPlugin ( options . output . sourceMapFilename , "\n/*\n//@ sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
184- else if ( options . devtool === "#sourcemap" || options . devtool === "#source-map" )
185- compiler . apply ( new SourceMapDevToolPlugin ( options . output . sourceMapFilename , "\n//# sourceMappingURL=[url]" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
186- else if ( options . devtool === "#@sourcemap" || options . devtool === "#@source-map" )
187- compiler . apply ( new SourceMapDevToolPlugin ( options . output . sourceMapFilename , "\n/*\n//@ sourceMappingURL=[url]\n//# sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
188- else if ( options . devtool === "cheapsourcemap" || options . devtool === "cheap-source-map" )
189- compiler . apply ( new SourceMapDevToolPlugin ( {
190- filename : options . output . sourceMapFilename ,
178+ else if ( options . devtool && ( options . devtool . indexOf ( "sourcemap" ) >= 0 || options . devtool . indexOf ( "source-map" ) >= 0 ) ) {
179+ var hidden = options . devtool . indexOf ( "hidden" ) >= 0 ;
180+ var inline = options . devtool . indexOf ( "inline" ) >= 0 ;
181+ var evalWrapped = options . devtool . indexOf ( "eval" ) >= 0 ;
182+ var cheap = options . devtool . indexOf ( "cheap" ) >= 0 ;
183+ var moduleMaps = options . devtool . indexOf ( "module" ) >= 0 ;
184+ var legacy = options . devtool . indexOf ( "@" ) >= 0 ;
185+ var modern = options . devtool . indexOf ( "#" ) >= 0 ;
186+ var comment = legacy && modern ? "\n/*\n//@ sourceMappingURL=[url]\n//# sourceMappingURL=[url]\n*/" :
187+ legacy ? "\n/*\n//@ sourceMappingURL=[url]\n*/" :
188+ modern ? "\n//# sourceMappingURL=[url]" :
189+ null ;
190+ compiler . apply ( new ( evalWrapped ? EvalSourceMapDevToolPlugin : SourceMapDevToolPlugin ) ( {
191+ filename : inline ? null : options . output . sourceMapFilename ,
191192 moduleFilenameTemplate : options . output . devtoolModuleFilenameTemplate ,
192193 fallbackModuleFilenameTemplate : options . output . devtoolFallbackModuleFilenameTemplate ,
193- module : false , columns : false , lineToLine : options . output . devtoolLineToLine
194- } ) ) ;
195- else if ( options . devtool === "inlinesourcemap" ||
196- options . devtool === "inline-sourcemap" ||
197- options . devtool === "inline-source-map" )
198- compiler . apply ( new SourceMapDevToolPlugin ( null , null , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
199- else if ( options . devtool === "@inlinesourcemap" ||
200- options . devtool === "@inline-sourcemap" ||
201- options . devtool === "@inline-source-map" )
202- compiler . apply ( new SourceMapDevToolPlugin ( null , "\n/*\n//@ sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
203- else if ( options . devtool === "#inlinesourcemap" ||
204- options . devtool === "#inline-sourcemap" ||
205- options . devtool === "#inline-source-map" )
206- compiler . apply ( new SourceMapDevToolPlugin ( null , "\n//# sourceMappingURL=[url]" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
207- else if ( options . devtool === "#@inlinesourcemap" ||
208- options . devtool === "#@inline-sourcemap" ||
209- options . devtool === "#@inline-source-map" )
210- compiler . apply ( new SourceMapDevToolPlugin ( null , "\n/*\n//@ sourceMappingURL=[url]\n//# sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate , options . output . devtoolFallbackModuleFilenameTemplate ) ) ;
211- else if ( options . devtool === "cheapinlinesourcemap" || options . devtool === "cheap-inline-source-map" )
212- compiler . apply ( new SourceMapDevToolPlugin ( {
213- moduleFilenameTemplate : options . output . devtoolModuleFilenameTemplate ,
214- fallbackModuleFilenameTemplate : options . output . devtoolFallbackModuleFilenameTemplate ,
215- module : false , columns : false , lineToLine : options . output . devtoolLineToLine
216- } ) ) ;
217- else if ( options . devtool === "evalsourcemap" ||
218- options . devtool === "eval-sourcemap" ||
219- options . devtool === "eval-source-map" )
220- compiler . apply ( new EvalSourceMapDevToolPlugin ( null , options . output . devtoolModuleFilenameTemplate ) ) ;
221- else if ( options . devtool === "@evalsourcemap" ||
222- options . devtool === "@eval-sourcemap" ||
223- options . devtool === "@eval-source-map" )
224- compiler . apply ( new EvalSourceMapDevToolPlugin ( "\n/*\n//@ sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate ) ) ;
225- else if ( options . devtool === "#evalsourcemap" ||
226- options . devtool === "#eval-sourcemap" ||
227- options . devtool === "#eval-source-map" )
228- compiler . apply ( new EvalSourceMapDevToolPlugin ( "\n//# sourceMappingURL=[url]" , options . output . devtoolModuleFilenameTemplate ) ) ;
229- else if ( options . devtool === "#@evalsourcemap" ||
230- options . devtool === "#@eval-sourcemap" ||
231- options . devtool === "#@eval-source-map" )
232- compiler . apply ( new EvalSourceMapDevToolPlugin ( "\n/*\n//@ sourceMappingURL=[url]\n//# sourceMappingURL=[url]\n*/" , options . output . devtoolModuleFilenameTemplate ) ) ;
233- else if ( options . devtool === "cheapevalsourcemap" || options . devtool === "cheap-eval-source-map" )
234- compiler . apply ( new EvalSourceMapDevToolPlugin ( {
235- moduleFilenameTemplate : options . output . devtoolModuleFilenameTemplate ,
236- fallbackModuleFilenameTemplate : options . output . devtoolFallbackModuleFilenameTemplate ,
237- module : false , columns : false , lineToLine : options . output . devtoolLineToLine
194+ append : hidden ? false : comment ,
195+ module : moduleMaps ? true : cheap ? false : true ,
196+ columns : cheap ? false : true ,
197+ lineToLine : options . output . devtoolLineToLine
238198 } ) ) ;
199+ }
239200
240201 function itemToPlugin ( item , name ) {
241202 if ( Array . isArray ( item ) )
0 commit comments