Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

gulp-import-tasks

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gulp-import-tasks

Import tasks from a local directory, rather than from your gulpfile.

  • 0.0.5
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
5
increased by150%
Maintainers
1
Weekly downloads
 
Created
Source

gulp-import-tasks

Imports Gulp tasks from a local directory, rather than from your gulpfile.

Based on gulp-load-tasks, but better (and actively maintained)!


Install

$ npm install gulp-import-tasks

Note: gulp is a required peer dependency.

Usage

Quick Start

Simply require the package within your gulpfile.js. By default, this will load all Gulp tasks that exist within a local tasks directory.

// gulpfile.js

require('gulp-import-tasks')();
// tasks/default.js

module.exports = [
  'clean'
];
// tasks/clean.js

const clean = require('gulp-clean');

module.exports = function (gulp) {
  return gulp.clean('dist', { read: false })
    .pipe(clean());
};

As you can see above, gulp-import-tasks will automatically send gulp as the first function parameter. You can add additional parameters using advanced options.

Custom Directory

You can customize the tasks directory by passing in the name of your custom directory as the first parameter. The following will check for tasks within the gulp/tasks directory.

// gulpfile.js

require('gulp-import-tasks')('gulp/tasks');

Or, you can define it by passing in an options object instead. See advanced usage.

// gulpfile.js

require('gulp-import-tasks')({
  dir: 'gulp/tasks'
});
Asynchronous Tasks

Gulp will automatically send an asynchronous callback function as the last parameter in your task definition. Use this to make your task asynchronous! Read more about asynchronous tasks in the Gulp docs here.

// tasks/async.js

module.exports = function (gulp, done) {
  doSomethingAsync(() => {
    done();
  });
};

Advanced

Using the options parameter, you may specify permissible file extensions, as well as any additional function parameters.

Options
OptionTypeDescriptionDefault
dirstringThe directory that contains your Gulp tasks.tasks
extensionsArray.<string>Only load files from the tasks directory that have these extensions.['.js']
paramsArray.<any>Additional parameters to pass into imported task.[]
Example
// gulpfile.js

const config = {
  build: 'dist'
};

require('gulp-import-tasks')({
  dir: 'gulp/tasks',
  extensions: ['.js'],
  params: [
    config
  ]
});
// gulp/tasks/default.js

module.exports = [
  'clean'
];
// gulp/tasks/clean.js

const clean = require('gulp-clean');

module.exports = function (gulp, config) {
  return gulp.clean(config.build, { read: false })
    .pipe(clean());
};
// gulp/tasks/async.js

module.exports = function (gulp, config, done) {
  doSomethingAsync(() => {
    done();
  });
};

Authors

License

MIT

Keywords

FAQs

Package last updated on 22 Jun 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc