generator-util
Utils for
generate
generators.
TOC
(TOC generated by verb using markdown-toc)
Install
Install with npm:
$ npm install generator-util --save
Usage
var util = ;
API
.homeRelative
Return a home-relative filepath
Params
filepath
{String}returns
{String}
Example
utils;//=> 'dev/foo'
.isDirectory
Return true if a filepath exists and is a directory.
Params
filepath
{String}returns
{Boolean}
.renameKey
Rename the key
used for storing views/templates
Params
key
{String}view
{Object}: therenameKey
method is used by templates for both setting and getting templates. When setting,view
is exposed as the second parameter.returns
{String}
.toAlias
Opposite of .toFullname
, creates an "alias" from the given name
by either stripping options.prefix
from the name, or just removing everything up to the first dash. If options.alias
is a function, it will be used instead.
Params
name
{String}options
{Object}returns
{String}
Example
utils;//=> 'foo'; utils;//=> 'c';
.toFullname
Opposite of .toAlias
, creates a generator name from the given alias
and namespace
.
Params
alias
{String}namespace
{String}returns
{String}
Example
utils;//=> 'generate-foo'; utils;//=> 'generate-bar'
.toGeneratorPath
Create an object-path for looking up a generator.
Params
name
{String}returns
{String}
Example
utils;//=> 'generators.a.generators.b.generators.c'
.getGenerator
Get a generator from app
.
Params
app
{Object}name
{String}: Generator namereturns
{Object}: Returns the generator instance.
.tryResolve
Try to require.resolve
module name
, first locally then in the globaly npm directory. Fails silently if not found.
Params
name
{String}: The name or filepath of the module to resolveoptions
{Object}: Passoptions.cwd
and/oroptions.configfile
(filename) to modify the path used byresolve
.returns
{String|undefined}
Example
utils;// orutils;// orutils;// orutils;
.tryRequire
Try to require the given module, failing silently if it doesn't exist. The function first calls require
on the given name
, then tries require(path.resolve(name))
before giving up.
Params
name
{String}: The module name or file pathreturns
{any|undefined}: Returns the value of requiring the specified module, orundefined
if unsuccessful.
Example
utils;
.tableize
Modified from the tableize
lib, which replaces
dashes with underscores, and we don't want that behavior.
Tableize obj
by flattening and normalizing the keys.
Params
- {Object}: obj
returns
{Object}
.isFunction
Returns true if the given value
is a function.
Params
value
{any}returns
{Boolean}
Example
utils;//=> false utils;//=> true
.isBoolean
Returns true if the given value
is a boolean.
Params
value
{any}returns
{Boolean}
Example
utils;//=> false utils;//=> true
.isString
Returns true if a the given value
is a string.
Params
value
{any}returns
{Boolean}
Example
utils;//=> false utils;//=> true
.isObject
Returns true if a the given value
is an object.
Params
value
{any}returns
{Boolean}
Example
utils;//=> false utils;//=> true
.arrayify
Cast the given value
to an array.
Params
value
{String|Array}returns
{Array}
Example
utils;//=> ['foo'] utils;//=> ['foo']
Related projects
- base: base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… more | homepage
- base-fs: base-methods plugin that adds vinyl-fs methods to your 'base' application for working with the file… more | homepage
- base-pipeline: base-methods plugin that adds pipeline and plugin methods for dynamically composing streaming plugin pipelines. | homepage
- base-plugins: Upgrade's plugin support in base applications to allow plugins to be called any time after… more | homepage
- base-runner: Orchestrate multiple instances of base-methods at once. | homepage
- base-tasks: base-methods plugin that provides a very thin wrapper around https://github.com/jonschlinkert/composer for adding task methods to… more | homepage
- generate: Fast, composable, highly extendable project generator with a user-friendly and expressive API. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ 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 March 04, 2016.