1 | var getAst = require("./get_ast");
|
2 | var amdToAmd = require("./amd_amd");
|
3 | var getCompile = require("./es6_compiler");
|
4 | var patchCircularDependencies = require("./patch_circular_dependencies");
|
5 |
|
6 | module.exports = function(load, options) {
|
7 | var compile = getCompile(options);
|
8 |
|
9 | var result = compile(
|
10 | load.source.toString(),
|
11 | {
|
12 | filename: options.sourceMapFileName || load.address,
|
13 | modules: "amd",
|
14 | sourceMaps: true
|
15 | },
|
16 | options
|
17 | );
|
18 |
|
19 | load.source = result.code;
|
20 | load.map = result.map;
|
21 | load.ast = getAst(load, options.sourceMapFileName);
|
22 |
|
23 | if (load.circular && options.patchCircularDependencies) {
|
24 | load.ast = patchCircularDependencies(load.ast);
|
25 | }
|
26 |
|
27 | return amdToAmd(load, options);
|
28 | };
|