diff --git a/src/Bundle.js b/src/Bundle.js index 18ab4da..071adc6 100644 --- a/src/Bundle.js +++ b/src/Bundle.js @@ -115,9 +115,9 @@ export default class Bundle { return Promise.resolve( this.load( id, this.loadOptions ) ) .then( source => transform( source, id, this.transformers ) ) .then( source => { - const { code, ast, sourceMapChain } = source; + const { code, originalCode, ast, sourceMapChain } = source; - const module = new Module({ id, code, ast, sourceMapChain, bundle: this }); + const module = new Module({ id, code, originalCode, ast, sourceMapChain, bundle: this }); this.modules.push( module ); this.moduleById[ id ] = module; diff --git a/src/Module.js b/src/Module.js index c3eebc9..ad65f3d 100644 --- a/src/Module.js +++ b/src/Module.js @@ -128,8 +128,9 @@ class SyntheticNamespaceDeclaration { } export default class Module { - constructor ({ id, code, ast, sourceMapChain, bundle }) { + constructor ({ id, code, originalCode, ast, sourceMapChain, bundle }) { this.code = code; + this.originalCode = originalCode; this.sourceMapChain = sourceMapChain; this.bundle = bundle; diff --git a/src/utils/collapseSourcemaps.js b/src/utils/collapseSourcemaps.js index d579340..bfddf67 100644 --- a/src/utils/collapseSourcemaps.js +++ b/src/utils/collapseSourcemaps.js @@ -63,6 +63,7 @@ export default function collapseSourcemaps ( map, modules ) { return tracedLine; }); + map.sourcesContent = modules.map( module => module.originalCode ); map.mappings = encode( tracedMappings ); return map; } diff --git a/src/utils/transform.js b/src/utils/transform.js index eea2953..16ca598 100644 --- a/src/utils/transform.js +++ b/src/utils/transform.js @@ -8,6 +8,7 @@ export default function transform ( source, id, transformers ) { }; } + let originalCode = source.code; let ast = source.ast; let code = transformers.reduce( ( previous, transformer ) => { @@ -29,5 +30,5 @@ export default function transform ( source, id, transformers ) { return result.code; }, source.code ); - return { code, ast, sourceMapChain }; + return { code, originalCode, ast, sourceMapChain }; }