0.0.4 • Published 8 years ago

tribble-plugin v0.0.4

Weekly downloads
3
License
MIT
Repository
github
Last release
8 years ago

tribble-plugin

Tribble plugin core module

Install

$ npm install tribble-plugin --save

Usage

plugin(input, ouput, type, process)

This method creates a plugin that can be installed with tribble's install command

This method requires the following parameters :

  • input : input files media type(s) (plugin.mediatypes.*)
  • output : output file media type(s) (plugin.mediatypes.*)
  • type : the plugin type (plugin.types.*)
  • process : process function (function(input, output, error) { ... })
const plugin = require('tribble-plugin');

module.exports = plugin(
	[plugin.mediatypes.scss, plugin.mediatypes.sass], // input file media types
	plugin.mediatypes.css, // output file media type
	plugin.types.PREPROCESSOR, // plugin type
	function(input, output, error) { // plugin core processing function
		const file = input.read(); // file is a File instance
		// ...
		if(err) {
			error.write(err);
		} else {
			output.write(result);
		}
	}
);

File instances have the following properties :

  • base : the base path of the distribution the file belongs to
  • path : the path of the file relative to the distribution's root
  • fullPath : the full path of the file
  • type : the media type of the file (plugin.mediatypes.*)
  • data : the file contents for non binary files

plugin.types

Object with types of plugins :

  • plugin.types.PREPROCESSOR (ex: SASS, Coffeescript)
  • plugin.types.TRANSFORM (any transformation plugin, order independant)
  • plugin.types.POSTPROCESSOR (ex: postCSS, r.js)
  • plugin.types.AGGREGATOR (ex: templating engine)
  • plugin.types.MINIFIER (ex: closure compiler)
  • plugin.types.PACKAGER (ex: zip packaging)

plugin.mediatypes

Map of mediatypes by extension based on mime-db (ex: plugin.mediatypes.scss)

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago