@@ -90,13 +90,15 @@ async function compiler(webpack: IWebPack, text: string): Promise<void> {
90
90
state . fileAnalyzer . dependencies . addCompiledModule ( fileName , compiledModule . fileName ) ;
91
91
transformation = {
92
92
text : compiledModule . text ,
93
- map : JSON . parse ( compiledModule . map )
93
+ map : compiledModule . map
94
+ ? JSON . parse ( compiledModule . map )
95
+ : null
94
96
}
95
97
} else {
96
98
97
99
function transform ( ) {
98
100
let resultText ;
99
- let resultSourceMap ;
101
+ let resultSourceMap = null ;
100
102
let output = state . emit ( fileName ) ;
101
103
102
104
let result = helpers . findResultFor ( output , fileName ) ;
@@ -106,14 +108,20 @@ async function compiler(webpack: IWebPack, text: string): Promise<void> {
106
108
}
107
109
108
110
resultText = result . text ;
109
- resultSourceMap = JSON . parse ( result . sourceMap ) ;
110
- resultSourceMap . sources = [ fileName ] ;
111
- resultSourceMap . file = fileName ;
112
- resultSourceMap . sourcesContent = [ text ] ;
111
+
112
+ if ( result . sourceMap ) {
113
+ resultSourceMap = JSON . parse ( result . sourceMap ) ;
114
+ resultSourceMap . sources = [ loaderUtils . getRemainingRequest ( webpack ) ] ;
115
+ resultSourceMap . file = fileName ;
116
+ resultSourceMap . sourcesContent = [ text ] ;
117
+
118
+ resultText = resultText . replace ( / ^ \/ \/ # s o u r c e M a p p i n g U R L = [ ^ \r \n ] * / gm, '' ) ;
119
+ }
113
120
114
121
if ( instance . options . useBabel ) {
115
122
let defaultOptions = {
116
123
inputSourceMap : resultSourceMap ,
124
+ sourceRoot : process . cwd ( ) ,
117
125
filename : fileName ,
118
126
sourceMap : true
119
127
}
0 commit comments