1 | var normalizeCJS = require('./normalize_cjs');
|
2 | var getCompile = require('./es6_compiler');
|
3 | var getAst = require("./get_ast");
|
4 |
|
5 | module.exports = function(load, options){
|
6 | var compile = getCompile(options);
|
7 |
|
8 | var copy = {};
|
9 | for(var prop in load) {
|
10 | copy[prop] = load[prop];
|
11 | }
|
12 |
|
13 | var result = compile(load.source.toString(), {
|
14 | filename: options.sourceMapFileName || load.address,
|
15 | modules: 'commonjs',
|
16 | sourceMaps: true
|
17 | }, options);
|
18 | load.source = result.code;
|
19 | load.map = result.map;
|
20 | var ast = load.ast = getAst(load, options.sourceMapFileName);
|
21 | if(options && (options.normalizeMap || options.normalize)) {
|
22 | copy.source = result.code;
|
23 | copy.ast = ast;
|
24 | return normalizeCJS(copy, options);
|
25 | } else {
|
26 | return ast;
|
27 | }
|
28 |
|
29 | };
|