Package Exports
- inquirer-checkbox-plus-prompt
- inquirer-checkbox-plus-prompt/index
- inquirer-checkbox-plus-prompt/index.js
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 (inquirer-checkbox-plus-prompt) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Inquirer Checkbox Plus Prompt
A plugin for Inquirer, similar to the original checkbox with extra features.
The animated GIF is made by Terminalizer
Installation
npm install inquirer-checkbox-plus-promptUsage
You can name it with any name other than checkbox-plus, just change the string 'checkbox-plus' to anything else.
inquirer.registerPrompt('checkbox-plus', require('inquirer-checkbox-plus-prompt'));
inquirer.prompt({
type: 'checkbox-plus',
...
})Options
Takes type, name, message, source[, filter, validate, default, pageSize, highlight, searchable] properties.
The extra options that this plugin provides are:
- source: (Function) a method that called to return a promise that should be resolved with a list of choices in a similar format as the
choicesoption in the originalcheckboxprompt ofInquirer. - highlight: (Boolean) if
true, the current selected choice gets highlighted. Default:false. - searchable: (Boolean) if
true, allow the user to filter the list. Thesourcefunction gets called everytime the search query is changed. Default:false.
Example
Check example.js for a more advanced example.
var inquirer = require('inquirer');
var fuzzy = require('fuzzy');
inquirer.registerPrompt('checkbox-plus', require('./index'));
var colors = ['red', 'green', 'blue', 'yellow'];
inquirer.prompt([{
type: 'checkbox-plus',
name: 'colors',
message: 'Enter colors',
pageSize: 10,
highlight: true,
searchable: true,
default: ['yellow', 'red'],
source: function(answersSoFar, input) {
input = input || '';
return new Promise(function(resolve) {
var fuzzyResult = fuzzy.filter(input, colors);
var data = fuzzyResult.map(function(element) {
return element.original;
});
resolve(data);
});
}
}]).then(function(answers) {
console.log(answers.colors);
});License
This project is under the MIT license.