remove sardines - move into nexe. Use bundle.js

This commit is contained in:
Craig Condon
2014-07-30 11:37:05 -07:00
parent 9247016635
commit 3cc7c68b12
2 changed files with 67 additions and 11 deletions
+66 -9
View File
@@ -1,6 +1,7 @@
var mdeps = require("module-deps"),
through = require("through"),
async = require("async");
async = require("async"),
path = require("path");
function bundle (input, complete) {
@@ -9,21 +10,77 @@ function bundle (input, complete) {
/**
*/
function resolveDeps () {
function resolveDeps (next) {
var deps = [];
mdeps(input).pipe(through(function (chunk) {
var md = mdeps();
md.pipe(through(function (chunk) {
deps.push(chunk);
}, function () {
for (var i = deps.length; i--;) {
console.log(deps);
}
next(null, deps)
}));
md.end({ file: input })
},
function bundleScript (deps, next) {
var buffer = [loader.toString()];
var dbuffer = [];
for (var i = deps.length; i--;) {
var dep = deps[i];
var req = "function (require, module, exports) { \n" + dep.source + "}"
dbuffer.push("'" + dep.id + "': ["+req+", "+!!dep.entry+", "+JSON.stringify(dep.deps)+"]")
}
buffer = ["(" + loader.toString() + ").call(null, {"+dbuffer.join(",")+"})"].toString();
next(null, buffer);
}
]);
], complete)
}
var loader = function (deps) {
var darr = [];
for (var key in deps) {
darr.push(deps[key]);
}
function initModule (dep) {
if (dep.module) return dep.module;
dep.module = { exports: {} };
dep[0](function (path) {
var rdep = deps[dep[2][path]];
var module = rdep.module || initModule(rdep);
return module.exports;
}, dep.module, dep.module.exports);
return dep.module;
}
darr.forEach(initModule);
return darr.filter(function (dep) {
return dep[1];
}).map(function (dep) {
return dep.module || {};
}).pop();
}
module.exports = bundle;
+1 -2
View File
@@ -16,13 +16,12 @@
"request": "~2.12.0",
"ncp": "~0.2.7",
"mkdirp": "~0.3.5",
"sardines": "~0.4.5",
"async": "~0.2.10",
"colors": "~0.6.2",
"glob": "~3.2.9",
"progress": "~1.1.3",
"tar.gz": "0.1.1",
"module-deps": "^3.5.4",
"module-deps": "^2.1.2",
"through": "^2.3.4"
},
"preferGlobal": "true",