@@ -3,7 +3,7 @@ import path from 'path';
3
3
import webpack from 'webpack' ;
4
4
import sources from 'webpack-sources' ;
5
5
6
- const { ConcatSource } = sources ;
6
+ const { ConcatSource, SourceMapSource , OriginalSource } = sources ;
7
7
const { Template } = webpack ;
8
8
9
9
const NS = path . dirname ( fs . realpathSync ( __filename ) ) ;
@@ -99,7 +99,7 @@ class MiniCssExtractPlugin {
99
99
const renderedModules = Array . from ( chunk . modulesIterable ) . filter ( module => module . type === NS ) ;
100
100
if ( renderedModules . length > 0 ) {
101
101
result . push ( {
102
- render : ( ) => this . renderContentAsset ( renderedModules ) ,
102
+ render : ( ) => this . renderContentAsset ( renderedModules , compilation . runtimeTemplate . requestShortener ) ,
103
103
filenameTemplate : this . options . filename ,
104
104
pathOptions : {
105
105
chunk,
@@ -112,7 +112,7 @@ class MiniCssExtractPlugin {
112
112
const renderedModules = Array . from ( chunk . modulesIterable ) . filter ( module => module . type === NS ) ;
113
113
if ( renderedModules . length > 0 ) {
114
114
result . push ( {
115
- render : ( ) => this . renderContentAsset ( renderedModules ) ,
115
+ render : ( ) => this . renderContentAsset ( renderedModules , compilation . runtimeTemplate . requestShortener ) ,
116
116
filenameTemplate : this . options . chunkFilename ,
117
117
pathOptions : {
118
118
chunk,
@@ -190,7 +190,7 @@ class MiniCssExtractPlugin {
190
190
return obj ;
191
191
}
192
192
193
- renderContentAsset ( modules ) {
193
+ renderContentAsset ( modules , requestShortener ) {
194
194
modules . sort ( ( a , b ) => a . index2 - b . index2 ) ;
195
195
const source = new ConcatSource ( ) ;
196
196
const externalsSource = new ConcatSource ( ) ;
@@ -211,7 +211,11 @@ class MiniCssExtractPlugin {
211
211
if ( m . media ) {
212
212
source . add ( `@media ${ m . media } {\n` ) ;
213
213
}
214
- source . add ( m . content ) ;
214
+ if ( m . sourceMap ) {
215
+ source . add ( new SourceMapSource ( m . content , m . readableIdentifier ( requestShortener ) , m . sourceMap ) ) ;
216
+ } else {
217
+ source . add ( new OriginalSource ( m . content , m . readableIdentifier ( requestShortener ) ) ) ;
218
+ }
215
219
source . add ( '\n' ) ;
216
220
if ( m . media ) {
217
221
source . add ( '}\n' ) ;
0 commit comments