Checkbox with autocomplete and other additions for Inquirer
npm install inquirer-checkbox-plus-promptA plugin for Inquirer, similar to the original checkbox with extra features.



The animated GIF is made by Terminalizer
```
npm install inquirer-checkbox-plus-prompt
You can name it with any name other than checkbox-plus, just change the string 'checkbox-plus' to anything else.
`js
inquirer.registerPrompt('checkbox-plus', require('inquirer-checkbox-plus-prompt'));
inquirer.prompt({
type: 'checkbox-plus',
...
})
`
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 choices option in the original checkbox prompt of Inquirer.true
* highlight: (Boolean) if , the current selected choice gets highlighted. Default: false.true
* searchable: (Boolean) if , allow the user to filter the list. The source function gets called everytime the search query is changed. Default: false.
Check example.js for a more advanced example.
`js
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);
});
``
This project is under the MIT license.