@keg-hub/ask-it
v1.1.2
Published
Node CLI helper for asking questions
Downloads
3,098
Readme
AskIt
Wrapper around inquirer to make asking questions in Node CLIs easier.
Setup
Install It
Add to your package.json
"askIt": "git+https://github.com/keg-hub/askIt.git"
Use It
See an example here
;(() => {
const { ask, separator, models } = require('askIt')
// See src/models/models for more information
const questionModelObject = {
// Add the default input model
...models.input,
// Override with custom values
type: 'Question type',
name: 'Name of the question',
message: 'Question to ask',
default: 'Default value if user enters nothing',
}
// Pass the model directly to the ask method
// Returns a value entered by the user or the default
const askResponse = await ask({ ...questionModelObject })
// Ask a true / false question
// Returns a boolean
const confirmResponse = await ask.confirm('Ask a confirm question?')
// Ask for text input
// Returns a string of the entered text
const inputResponse = await ask.input('Ask for text input')
// Ask for a password / secret - input will be hidden
// Returns a string of the entered text
const passwordResponse = await ask.password('Ask for hidden text input')
// Ask for user to select an option from a list of options
// Returns the index of the select option within the passed in array
const listResponse = await ask.promptList([
'Option 1',
'Option 2',
'Option 3',
])
})()
API
ask
- @type
function
- @param
Object
- a question model object - ask.confirm
- @type
function
- @param
string
- The true / false question to ask - Helper method to ask a true/false question
- Accepts a
string
used as the question asked to the user
- @type
- ask.input
- @type
function
- @param
string
- The text input question to ask - Helper method to ask a text input question
- @type
- ask.password
- @type
function
- @param
string
- The text input question to ask - Same as
ask.input
, except user input is hidden
- @type
- ask.promptList
- @type
function
- @param
array
- List of options to present to the user - Asks the user to select from a list of options
- @returns -
index
of the selected item from the passed inoptions
- @type
separator
- @type
function
- Helper that returns
new inquirer.Separator()
models
- @type
Object
- Prebuilt question models with defaults already set
- Expected to be overwritten with custom values as needed
- Question model object
- Matches the inquirer questions model