%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/1857783/root/usr/local/lib/node_modules/gulp-cli/lib/versioned/^4.0.0/log/
Upload File :
Create Path :
Current File : //proc/1857783/root/usr/local/lib/node_modules/gulp-cli/lib/versioned/^4.0.0/log/sync-task.js

'use strict';

var log = require('gulplog');
var ansi = require('../../../shared/ansi');

var tasks = {};

function warn() {
  var taskKeys = Object.keys(tasks);

  if (!taskKeys.length) {
    return;
  }

  var taskNames = taskKeys.map(function(key) {
    return tasks[key];
  }).join(', ');

  process.exitCode = 1;

  log.warn(
    ansi.red('The following tasks did not complete:'),
    ansi.cyan(taskNames)
  );
  log.warn(
    ansi.red('Did you forget to signal async completion?')
  );
}

function start(e) {
  tasks[e.uid] = e.name;
}

function clear(e) {
  delete tasks[e.uid];
}

function clearAll() {
  tasks = {};
}

function logSyncTask(gulpInst, opts) {

  process.once('exit', warn);
  gulpInst.on('start', start);
  gulpInst.on('stop', clear);
  // When not running in --continue mode, we need to clear everything on error to avoid
  // false positives.
  gulpInst.on('error', opts.continue ? clear : clearAll);
}

module.exports = logSyncTask;

Zerion Mini Shell 1.0