buildTree.js 519 B

1234567891011121314151617181920212223242526272829
  1. 'use strict';
  2. var map = require('collection-map');
  3. var metadata = require('./metadata');
  4. function buildTree(tasks) {
  5. return map(tasks, function(task) {
  6. var meta = metadata.get(task);
  7. if (meta) {
  8. return meta.tree;
  9. }
  10. var name = task.displayName || task.name || '<anonymous>';
  11. meta = {
  12. name: name,
  13. tree: {
  14. label: name,
  15. type: 'function',
  16. nodes: [],
  17. },
  18. };
  19. metadata.set(task, meta);
  20. return meta.tree;
  21. });
  22. }
  23. module.exports = buildTree;