Socket
Socket
Sign inDemoInstall

systemjs-builder

Package Overview
Dependencies
Maintainers
1
Versions
139
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

systemjs-builder - npm Package Compare versions

Comparing version 0.1.6 to 0.2.0

test/test-sfx.html

2

bower.json
{
"name": "systemjs-builder",
"main": "index.js",
"version": "0.1.1",
"version": "0.2.0",
"authors": [

@@ -6,0 +6,0 @@ "guybedford <guybedford@gmail.com>"

@@ -7,4 +7,2 @@ var System = require('systemjs');

var compiler = new traceur.Compiler();
var CJSRequireTransformer = require('./cjs').CJSRequireTransformer;

@@ -181,11 +179,14 @@

if (deps.elements.length != 0) {
// convert into strings
deps = deps.elements.map(function(dep) {
var depValue = dep.literalToken.processedValue;
return self.depMap[depValue] || depValue;
});
if (deps.length != 0) {
// filter out the special deps "require", "exports", "module"
var requireIndex, exportsIndex, moduleIndex;
var depNames = deps.elements.map(function(dep) {
var depValue = dep.literalToken.processedValue
if (self.depMap[depValue])
depValue = self.depMap[depValue];
return depValue;
var depNames = deps.map(function(dep) {
return self.depMap[dep] || dep;
});

@@ -204,4 +205,9 @@

if (requireIndex != -1) {
var fnParameters = factory.parameterList.parameters;
var reqName = fnParameters[requireIndex] && fnParameters[requireIndex].parameter.binding.identifierToken.value;
var cjsRequireTransformer = new CJSRequireTransformer(reqName, function(v) { return self.depMap[v] || v });
factory.body = cjsRequireTransformer.transformAny(factory.body);
depCalls.splice(requireIndex, 1, '__require');
deps.elements.splice(requireIndex, 1);
deps.splice(requireIndex, 1);
if (exportsIndex > requireIndex)

@@ -215,3 +221,3 @@ exportsIndexD--;

depCalls.splice(exportsIndex, 1, '__exports');
deps.elements.splice(exportsIndexD, 1);
deps.splice(exportsIndexD, 1);
if (moduleIndexD > exportsIndexD)

@@ -222,3 +228,3 @@ moduleIndexD--;

depCalls.splice(moduleIndex, 1, '__module');
deps.elements.splice(moduleIndexD, 1);
deps.splice(moduleIndexD, 1);
}

@@ -233,3 +239,3 @@ }

');\n});'
], deps, factory, parseExpression([depCalls.join(', ')]));
], parseExpression([JSON.stringify(deps)]), factory, parseExpression([depCalls.join(', ')]));
else

@@ -240,3 +246,3 @@ return parseExpression([

').call(' + (bindToExports ? '__exports' : 'this') + ');\n});'
], deps, factory);
], parseExpression([JSON.stringify(deps)]), factory);
}

@@ -287,2 +293,10 @@

var reqName = params[0] && params[0].parameter.binding.identifierToken.value;
var cjsRequireTransformer = new CJSRequireTransformer(reqName, function(v) { return self.depMap[v] || v });
args[0].body = cjsRequireTransformer.transformAny(args[0].body);
var params = args[0].parameterList.parameters;
if (params.length > 1)
bindToExports = true;
if (bindToExports)

@@ -311,8 +325,8 @@ return parseExpression([

// extract AMD dependencies using tree parsing
var output = compiler.stringToTree({content: load.source});
if (output.errors.length)
return Promise.reject(output.errors[0]);
load.metadata.parseTree = output;
// NB can remove after Traceur 0.0.77
if (!load.source) load.source = ' ';
var compiler = new traceur.Compiler({ script: true });
load.metadata.parseTree = compiler.parse(load.source, load.address);
var depTransformer = new AMDDependenciesTransformer();
depTransformer.transformAny(output.tree);
depTransformer.transformAny(load.metadata.parseTree);

@@ -332,13 +346,12 @@ // we store the results as meta

exports.remap = function(source, map) {
var output = compiler.stringToTree({content: source, options: options});
if (output.errors.length)
return Promise.reject(output.errors[0]);
exports.remap = function(source, map, fileName) {
// NB can remove after Traceur 0.0.77
if (!source) source = ' ';
var compiler = new traceur.Compiler({ script: true });
var tree = compiler.parse(source, fileName);
var transformer = new AMDDependenciesTransformer(map);
output.tree = transformer.transformAny(output.tree);
output = compiler.treeToString(output);
if (output.errors.length)
return Promise.reject(output.errors[0]);
return Promise.resolve({ source: output.js });
tree = transformer.transformAny(tree);
return Promise.resolve({
source: compiler.write(tree)
});
}

@@ -349,8 +362,9 @@

exports.compile = function(load, normalize, loader) {
var output = load.metadata.parseTree;
var compiler = new traceur.Compiler();
var tree = load.metadata.parseTree;
var transformer = new AMDDefineRegisterTransformer(load, load.metadata.isAnon, normalize ? load.depMap : {});
output.tree = transformer.transformAny(output.tree);
var output = compiler.treeToString(output);
if (output.errors.length)
return Promise.reject(output.errors[0]);
tree = transformer.transformAny(tree);
var output = compiler.write(tree);

@@ -360,4 +374,4 @@ // because we've blindly replaced the define statement from AMD with a System.register call

return Promise.resolve({
source: '(function() {\nfunction define(){}; define.amd = {};\n ' + output.js.replace(/\n/g, '\n ') + '})();'
source: '(function() {\nfunction define(){}; define.amd = {};\n ' + output.replace(/\n/g, '\n ') + '})();'
});
}

@@ -56,3 +56,3 @@ // NB move these CommonJS layers out into a static operation on the CommonJS module rather

return load.depMap[dep];
})
}, load.address)
.then(function(output) {

@@ -70,22 +70,14 @@ return output.source;

function remap(source, map, fileName) {
var output = compiler.stringToTree({content: source, options:{filename:fileName}});
if (output.errors.length)
return Promise.reject(output.errors[0]);
// NB can remove after Traceur 0.0.77
if (!source) source = ' ';
var compiler = new traceur.Compiler({ script: true });
var tree = compiler.parse(source, fileName);
var transformer = new CJSRequireTransformer('require', map);
output.tree = transformer.transformAny(output.tree);
tree = transformer.transformAny(tree);
if (output.errors.length)
return Promise.reject(output.errors[0]);
output = compiler.treeToString(output);
if (output.errors.length)
return Promise.reject(output.errors[0]);
return Promise.resolve({
source: output.js
source: compiler.write(tree)
});
}
exports.remap = remap;
var traceur = require('traceur');
var compiler = new traceur.Compiler();

@@ -19,18 +18,11 @@ var ParseTreeTransformer = traceur.get('codegeneration/ParseTreeTransformer').ParseTreeTransformer;

function remap(source, map) {
var output = compiler.stringToTree({content: source});
function remap(source, map, fileName) {
var compiler = new traceur.Compiler();
if (output.errors.length)
return Promise.reject(output.errors[0]);
var tree = compiler.parse(source, fileName);
var transformer = new ModuleImportNormalizeTransformer(map);
output.tree = transformer.transformAny(output.tree);
tree = new ModuleImportNormalizeTransformer(map).transformAny(tree);
output = compiler.treeToString(output);
if (output.errors.length)
return Promise.reject(output.errors[0]);
return Promise.resolve({
source: output.js
source: compiler.write(tree)
});

@@ -42,13 +34,9 @@ }

exports.compile = function(load) {
var output = compiler.stringToTree({
content: load.source,
options: {
filename: load.address,
moduleName: load.name,
modules: 'instantiate'
}
var compiler = new traceur.Compiler({
moduleName: load.name,
modules: 'instantiate'
});
if (output.errors.length)
return Promise.reject(output.errors[0]);
var tree = compiler.parse(load.source, load.address);

@@ -58,21 +46,8 @@ var transformer = new ModuleImportNormalizeTransformer(function(dep) {

});
output.tree = transformer.transformAny(output.tree);
if (output.errors.length)
return Promise.reject(output.errors[0]);
output = compiler.treeToTree(output);
tree = compiler.transform(transformer.transformAny(tree));
if (output.errors.length)
return Promise.reject(output.errors[0]);
output = compiler.treeToString(output);
if (output.errors.length)
return Promise.reject(output.errors[0]);
return Promise.resolve({
source: output.js
source: compiler.write(tree)
});
}

@@ -108,2 +108,6 @@ var Promise = require('rsvp').Promise;

var load = tree[name];
if (load.metadata.plugin && (load.metadata.build === false || load.metadata.plugin.build === false)) {
concatOutput.push('System.register("' + load.name + '", [], false, function() { console.log("SystemJS Builder - Plugin for ' + load.name + ' does not support sfx builds"); });\n');
}
return Promise.resolve(compileLoad(load, true, compilers))

@@ -110,0 +114,0 @@ .then(concatOutput.push.bind(concatOutput));

{
"name": "systemjs-builder",
"version": "0.1.6",
"version": "0.2.0",
"description": "",

@@ -10,8 +10,8 @@ "main": "index.js",

"dependencies": {
"rsvp": "^3.0.6",
"systemjs": "0.8.2",
"traceur": "0.0.58"
"rsvp": "^3.0.14",
"systemjs": "0.9.1",
"traceur": "0.0.66"
},
"devDependencies": {
"es6-module-loader": "0.8.2"
"es6-module-loader": "0.9.2"
},

@@ -18,0 +18,0 @@ "scripts": {

@@ -6,3 +6,3 @@ SystemJS Build Tool

Builds ES6 into ES5, CommonJS, AMD and globals into a single file in a way that supports the CSP SystemJS loader
Builds ES6 into ES3, CommonJS, AMD and globals into a single file in a way that supports the CSP SystemJS loader
as well as circular references.

@@ -26,51 +26,6 @@

Builds into:
Will build the module `app` into a bundle containing both `app` and `jquery` defined through `System.register` calls.
```javascript
// Declarative System.register (ES6)
// System.register(name, deps, declare)
System.register('app', ['./jquery'], function(deps) {
var $, hello;
return {
exports: {
get hello() {
return hello;
},
set hello(val) {
hello = val;
}
},
execute: function() {
$ = deps[0]['default'];
hello = 'es6';
}
}
});
Circular references and bindings in ES6, CommonJS and AMD all behave exactly as they should, including maintaining execution order.
define('jquery', function() {
return 'this is jquery';
});
```
It also provides a dynamic System.register variation for CommonJS and Globals. For example, CommonJS is output as:
```javascript
// Dynamic module System.register
// System.register(name, deps, executingRequire, execute);
System.register("some/cjs", [], true, function(require, exports, __moduleName) {
var global = System.global;
var __define = global.define;
global.define = undefined;
var module = { exports: exports };
var process = System.get("@@nodeProcess")['default'];
exports.cjs = true;
global.define = __define;
return module.exports;
});
```
The `true` boolean argument in the above indicates that CommonJS requires are execution driving,
as opposed to AMD which delays execution until all dependencies have been executed.
Usage

@@ -77,0 +32,0 @@ ---

@@ -215,4 +215,2 @@ "format register";

throw "System Register: The module requested " + name + " but this was not declared as a dependency";
if (exports.__useDefault)
exports = exports['default'];
}

@@ -229,2 +227,6 @@

}
if ((!entry || entry.declarative) && exports && exports.__useDefault)
return exports['default'];
return exports;

@@ -325,3 +327,2 @@ }

var module = entry.declarative ? entry.module.exports : { 'default': entry.module.exports, '__useDefault': true };
entry.module.module = module;

@@ -334,2 +335,4 @@ // return the defined module object

var System;
// if there's a system loader, define onto it

@@ -336,0 +339,0 @@ if (typeof System != 'undefined' && System.register) {

@@ -5,7 +5,7 @@ "format register";

function define(){}; define.amd = {};
System.register("tree/amd-1", ['./first', './second'], false, function(__require, __exports, __module) {
System.register("tree/amd-1", ["./first", "./second"], false, function(__require, __exports, __module) {
return (function(first, second, require, module) {
module.exports = {
first: first,
second: require('./second')
second: require("./second")
};

@@ -12,0 +12,0 @@ }).call(this, __require('./first'), __require('./second'), __require, __module);

@@ -7,5 +7,5 @@ "format register";

(function(req, exports, module) {
module.exports = req('./first');
module.exports = req("./first");
}).call(__exports, __require, __exports, __module);
});
})();

@@ -8,5 +8,5 @@ "format register";

}
System.register("tree/amd-4", ['./second'], false, function(__require, __exports, __module) {
System.register("tree/amd-4", ["./second"], false, function(__require, __exports, __module) {
return (factory).call(this, __require('./second'));
});
})();

@@ -11,5 +11,5 @@ "format register";

}
System.register("tree/amd-5b", ['./first'], false, function(__require, __exports, __module) {
System.register("tree/amd-5b", ["./first"], false, function(__require, __exports, __module) {
return (factory).call(this, __require('./first'));
});
})();

@@ -215,4 +215,2 @@ "format register";

throw "System Register: The module requested " + name + " but this was not declared as a dependency";
if (exports.__useDefault)
exports = exports['default'];
}

@@ -229,2 +227,6 @@

}
if ((!entry || entry.declarative) && exports && exports.__useDefault)
return exports['default'];
return exports;

@@ -325,3 +327,2 @@ }

var module = entry.declarative ? entry.module.exports : { 'default': entry.module.exports, '__useDefault': true };
entry.module.module = module;

@@ -334,2 +335,4 @@ // return the defined module object

var System;
// if there's a system loader, define onto it

@@ -366,3 +369,5 @@ if (typeof System != 'undefined' && System.register) {

System.register("tree/some!tree/plugin", [], false, function() { console.log("SystemJS Builder - Plugin for tree/some!tree/plugin does not support sfx builds"); });
System.register("tree/third", [], function($__export) {

@@ -403,2 +408,5 @@ return {

exports.build = false;
exports.fetch = function() {
return '';
};

@@ -447,3 +455,3 @@ global.define = __define;

function define(){}; define.amd = {};
System.register("tree/amd", ['./global', './some!./plugin', './text.txt!./text-plugin'], false, function(__require, __exports, __module) {
System.register("tree/amd", ["tree/global", "tree/some!tree/plugin", "tree/text.txt!tree/text-plugin"], false, function(__require, __exports, __module) {
return (function(a, b, c) {

@@ -454,3 +462,3 @@ return {

};
}).call(this, __require('./global'), __require('./some!./plugin'), __require('./text.txt!./text-plugin'));
}).call(this, __require('tree/global'), __require('tree/some!tree/plugin'), __require('tree/text.txt!tree/text-plugin'));
});

@@ -475,9 +483,9 @@ })();

function define(){}; define.amd = {};
System.register("tree/amd-1", ['./first', './second'], false, function(__require, __exports, __module) {
System.register("tree/amd-1", ["tree/first", "tree/second"], false, function(__require, __exports, __module) {
return (function(first, second, require, module) {
module.exports = {
first: first,
second: require('./second')
second: require("tree/second")
};
}).call(this, __require('./first'), __require('./second'), __require, __module);
}).call(this, __require('tree/first'), __require('tree/second'), __require, __module);
});

@@ -484,0 +492,0 @@ })();

@@ -40,2 +40,6 @@ "format register";

exports.fetch = function() {
return '';
}
global.define = __define;

@@ -82,3 +86,3 @@ return module.exports;

function define(){}; define.amd = {};
System.register("tree/amd", ['./global', './some!./plugin', './text.txt!./text-plugin'], false, function(__require, __exports, __module) {
System.register("tree/amd", ["./global", "./some!./plugin", "./text.txt!./text-plugin"], false, function(__require, __exports, __module) {
return (function(a, b, c) {

@@ -85,0 +89,0 @@ return {

exports.build = false;
exports.fetch = function() {
return '';
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc