Acme.BookStore.HttpApi.Host/node_modules/gulp-cli/lib/shared/log/tasks.js

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

'use strict';

var archy = require('archy');
var log = require('gulplog');

var sortBy = require('array-sort');
var isObject = require('isobject');

var ansi = require('../ansi');
var copyTree = require('./copy-tree');

function logTasks(tree, opts, getTask) {
  if (opts.sortTasks) {
    tree.nodes = sortBy(tree.nodes, 'label');
  }

  var lineInfos = [];
  var entryObserver = getLineInfoCollector(lineInfos);
  var nodeFactory = getNodeFactory(getTask, entryObserver);

  tree = copyTree(tree, opts, nodeFactory);
  var spacer = getSpacerForLineIndents(tree, lineInfos);
  var lines = getLinesContainingOnlyBranches(tree);

  log.info(tree.label);
  printTreeList(lines, spacer, lineInfos);
}

function getLineInfoCollector(lineInfos) {
  return {
    topTask: function(node) {
      lineInfos.push({
        name: node.label,
        desc: node.desc,
        type: 'top',
      });
    },
    option: function(opt) {
      lineInfos.push({
        name: opt.label,
        desc: opt.desc,
        type: 'option',
      });
    },
    childTask: function(node) {
      lineInfos.push({
        name: node.label,
        type: 'child',
      });
    },
  };
}

function getNodeFactory(getTask, entryObserver) {
  return {
    topNode: function(node) {
      return {
        label: node.label,
      };
    },
后面还有 106 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。