factor-bundle
Advanced tools
Comparing version 0.1.1 to 0.1.2
39
index.js
@@ -8,16 +8,25 @@ var Transform = require('stream').Transform; | ||
var nub = require('nub'); | ||
var toposort = require('toposort'); | ||
var depsTopoSort = require('deps-topo-sort'); | ||
var reverse = require('reversepoint'); | ||
module.exports = function (files, opts) { | ||
if (!opts) opts = {}; | ||
if (opts.objectMode) return new Factor(files, opts); | ||
var fr = new Factor(files, opts); | ||
var parse = JSONStream.parse([true]); | ||
var dup = opts.raw | ||
? combine(parse, fr) | ||
: combine(parse, fr, JSONStream.stringify()) | ||
; | ||
var parse, dup; | ||
parse.on('error', function (err) { dup.emit('error', err) }); | ||
if (opts.objectMode) { | ||
dup = combine(depsTopoSort(), reverse(), fr); | ||
} | ||
else { | ||
parse = JSONStream.parse([true]); | ||
dup = opts.raw | ||
? combine(parse, depsTopoSort(), reverse(), fr) | ||
: combine( | ||
parse, depsTopoSort(), reverse(), fr, JSONStream.stringify() | ||
) | ||
; | ||
parse.on('error', function (err) { dup.emit('error', err) }); | ||
} | ||
fr.on('error', function (err) { dup.emit('error', err) }); | ||
@@ -69,3 +78,4 @@ fr.on('stream', function (s) { | ||
addGroups(row.id); | ||
} else { | ||
} | ||
else { | ||
this._buffered[row.id] = row; | ||
@@ -92,11 +102,4 @@ if (this._groups[row.id]) { | ||
var deps = []; | ||
var ensureCommon = {}; | ||
Object.keys(self._buffered).forEach(function (file) { | ||
Object.keys(self._buffered[file].deps).forEach(function (dep) { | ||
deps.push([self._buffered[file].id, self._buffered[file].deps[dep]]) | ||
}); | ||
}); | ||
var order = toposort.array(Object.keys(self._buffered), deps); | ||
var ensureCommon = {}; | ||
order.forEach(function (file) { | ||
var row = self._buffered[file]; | ||
@@ -103,0 +106,0 @@ |
{ | ||
"name": "factor-bundle", | ||
"version": "0.1.1", | ||
"version": "0.1.2", | ||
"description": "factor browser-pack bundles into common shared bundles", | ||
@@ -14,3 +14,4 @@ "main": "index.js", | ||
"nub": "0.0.0", | ||
"toposort": "~0.2.10" | ||
"deps-topo-sort": "~0.2.0", | ||
"reversepoint": "~0.2.0" | ||
}, | ||
@@ -17,0 +18,0 @@ "devDependencies": { |
661
25840
8
+ Addeddeps-topo-sort@~0.2.0
+ Addedreversepoint@~0.2.0
+ Addeddeps-topo-sort@0.2.1(transitive)
+ Addedminimist@0.0.5(transitive)
+ Addedreversepoint@0.2.1(transitive)
- Removedtoposort@~0.2.10
- Removedtoposort@0.2.12(transitive)