JSPM

base-target

0.1.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1
  • Score
    100M100P100Q19594F
  • License MIT

Plugin that adds support for defining declarative `target` configurations that directly map to functional tasks.

Package Exports

  • base-target

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (base-target) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

base-target NPM version NPM downloads Build Status

Plugin that adds support for defining declarative target configurations that directly map to functional tasks.

You might also be interested in expand-target.

Install

Install with npm:

$ npm install --save base-target

Usage

Can be used with gulp or any supporting base application.

var target = require('base-target');
var each = require('base-files-each'); 
var Base = require('base-app');
var app = new Base();
app.use(target());
app.use(each());

// create a "target" configuration
var site = app.target('site', {
  options: {
    data: {
      site: { title: 'My Blog' }
    }
  },
  src: 'templates/*.hbs',
  dest: 'site',
});

// build the target
app.task('default', function(cb) {
  app.each(site, cb);
});

See the expand-target library for additional information and API documentation.

API

.isTarget

Returns true if the given value is a valid Target.

Params

  • val {any}
  • returns {Boolean}

Example

app.isTarget('foo');
//=> false

var Target = require('expand-target');
var target = new Target();
app.isTarget(target);
//=> true

.target

Get target name from app.targets, or set target name with the given config.

Params

  • name {String|Object|Function}
  • config {Object|Fucntion}
  • returns {Object}: Returns the app instance when setting a target, or the target instance when getting a target.

Example

app.target('foo', {
  options: {},
  files: {
    src: ['*'],
    dest: 'foo'
  }
});

// or
var target = app.target('foo');

.setTarget

Add target name to app.targets.

Params

  • name {String}
  • config {Object|Function}

Example

app.addTarget('foo', {
  options: {},
  files: {
    src: ['*'],
    dest: 'foo'
  }
});

.getTarget

Get target name from app.targets, or return a normalized instance of Target if an object or function is passed.

Params

  • name {String}
  • options {Object}

Example

var target = app.getTarget('foo');

// or create an instance of `Target` using the given object
var target = app.getTarget({
  options: {},
  files: {
    src: ['*'],
    dest: 'foo'
  }
});

app.Target

Get or set the Target constructor. Exposed as a getter/setter to allow it to be customized before or after instantiation.

Example

// set
app.Target = require('expand-target'); // or something custom

// get
var target = new app.Target();

Compatibility

This plugin can be used with base, or any of the following base applications:

  • assemble: Get the rocks out of your socks! Assemble makes you fast at creating web projects… more | homepage
  • generate: Command line tool and developer framework for scaffolding out new GitHub projects. Generate offers the… more | homepage
  • update: Be scalable! Update is a new, open source developer framework and CLI for automating updates… more | homepage
  • verb: Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… more | homepage

About

  • base-boilerplate: Plugin that adds support for generating project files from a declarative boilerplate configuration. | homepage
  • base-scaffold: Base plugin that adds support for generating files from a declarative scaffold configuration. | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

(This document was generated by verb-generate-readme (a verb generator), please don't edit the readme directly. Any changes to the readme must be made in .verb.md.)

To generate the readme and API documentation with verb:

$ npm install -g verb verb-generate-readme && verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on July 18, 2016.