mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
3f50abcb51
Previously the commonjs modules were being passed into webpack dependency layer, preventing tree shaking.
25 lines
738 B
JavaScript
25 lines
738 B
JavaScript
import loaderUtils from 'loader-utils'
|
|
|
|
module.exports = function (content, sourceMap) {
|
|
this.cacheable()
|
|
|
|
const query = loaderUtils.getOptions(this)
|
|
const name = query.name || '[hash].[ext]'
|
|
const context = query.context || this.options.context
|
|
const regExp = query.regExp
|
|
const opts = { context, content, regExp }
|
|
const interpolatedName = loaderUtils.interpolateName(this, name, opts)
|
|
|
|
const emit = (code, map) => {
|
|
this.emitFile(interpolatedName, code, map)
|
|
this.callback(null, content, sourceMap)
|
|
}
|
|
|
|
if (query.transform) {
|
|
const transformed = query.transform({ content, sourceMap, interpolatedName })
|
|
return emit(transformed.content, transformed.sourceMap)
|
|
}
|
|
|
|
return emit(content, sourceMap)
|
|
}
|