1.1.0 • Published 10 years ago

zkflow v1.1.0

Weekly downloads
5
License
MIT
Repository
github
Last release
10 years ago

ZKflow

Loader for reusable gulp tasks

Made by Zaklinacze Kodu

Shields

npm npm npm Travis Code Climate David David GitHub forks GitHub stars GitHub followers

Installation

npm install --save zkflow gulp

Example

ZKflow is used as a base for ZKflow for Angular

API

require('zkflow')(tasksDefinitions, gulp, ...);

gulp

Gulp instance, usually require('gulp').

tasksDefinitions

Defining tasks

{
  taskName: {
    task: {
      getTask: function(
        options, // this object contains options computed from options passed to zkflow and task default options
        gulp,    // instance of gulp passed to zkflow
        ...)     // extra arguments passed to zkflow
        {
          return function() { // this function is actual gulp task function, which will be passed to gulp with given dependencies 
        }
      },
      defaultOptions: {
        option1: 'defaultValue',
        option3: 'totally different value'
      }
    },
    dependencies: ['task2', 'task3'],      // defaults to []
    enabled: true,                         // defaults to true
    option1: 'value',
    option2: 'other value'
  }
}

For every task options are merged only 1 level deep. Deeper they will be overwritten.

For example if you have default options

{
  defaultOptions: {
      option1: 1
      option2: 2
      option3: {
          subOption1: 3
          subOption2: 4
      }
  }
}

and you pass to zkflow

{
  someTask: {
      option1: 11
      option3: {
          subOption1: 5
      }
  }
}

actual options object in task is

{
  someTask: {
      option1: 11
      option2: 2
      option3: {
          subOption1: 5
      }
  }
}