| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | 'use strict';var util = require('util');var Undertaker = require('undertaker');var vfs = require('vinyl-fs');var watch = require('glob-watcher');function Gulp() {  Undertaker.call(this);  // Bind the functions for destructuring  this.watch = this.watch.bind(this);  this.task = this.task.bind(this);  this.series = this.series.bind(this);  this.parallel = this.parallel.bind(this);  this.registry = this.registry.bind(this);  this.tree = this.tree.bind(this);  this.lastRun = this.lastRun.bind(this);  this.src = this.src.bind(this);  this.dest = this.dest.bind(this);  this.symlink = this.symlink.bind(this);}util.inherits(Gulp, Undertaker);Gulp.prototype.src = vfs.src;Gulp.prototype.dest = vfs.dest;Gulp.prototype.symlink = vfs.symlink;Gulp.prototype.watch = function(glob, opt, task) {  if (typeof opt === 'string' || typeof task === 'string' ||    Array.isArray(opt) || Array.isArray(task)) {    throw new Error('watching ' + glob + ': watch task has to be ' +      'a function (optionally generated by using gulp.parallel ' +      'or gulp.series)');  }  if (typeof opt === 'function') {    task = opt;    opt = {};  }  opt = opt || {};  var fn;  if (typeof task === 'function') {    fn = this.parallel(task);  }  return watch(glob, opt, fn);};// Let people use this class from our instanceGulp.prototype.Gulp = Gulp;var inst = new Gulp();module.exports = inst;
 |