UNPKG

capnp-js-plugin

Version:

Capnproto implementation for Javascript

26 lines (25 loc) 834 B
var node = require('./node'); var joinId = require('./joinId'); var imports = require('./imports'); module.exports = function(requestedFiles, nodes) { var is = imports(requestedFiles, nodes); var trees = []; requestedFiles.forEach(function(file) { var index = {}; nodes.forEach(function(n) { index[joinId(n.getId())] = n; }); var id = joinId(file.getId()); var children = index[id].getNestedNodes().map(function(c) { return node([ c ], index); }); trees.push({ name: file.getFilename().toString(), meta: "file", imports: is[id], id: id, nodes: children }); }); return trees; };