UNPKG

superprompt

Version:

Superprompt is a commandline prompting tool with different prompt types

90 lines (62 loc) 2.3 kB
Superprompt ============= Superprompt is a commandline prompting tool. It supports `string`, `boolean`, `number` and `array` fields. Installation ------------ `npm install superprompt` Usage ----- ```js const questions = [{ name: 'name', type: 'string', question: 'Enter an username' }, { name: 'isHuman', type: 'boolean', question: 'Are you a human? [yes/no]' }, { name: 'list', type: 'array', question: 'Add a few items' }] const superprompt = require('superprompt') superprompt.prompt(questions).then((answers) => { console.log(answers) }).catch((err) => { console.error(err) }) //Result may looks like: { name: 'Andi', isHuman: true, list: [ 'banana', 'pear', 'mango' ] } ``` Options ------- | Name | Description | | --------- | ---------------------------------------------------------------------------------------------------- | | `name` | Set a property name | | `type` | Set a prompt type. Could be 'string', 'boolean', 'number', 'array' or 'input'. Defaults to 'string'. | | `default` | Default value | | `value` | Preset value of the prompt | | `only` | Ask question only if flag is `true` or value is a function which evaluates to `true` | ### Field types #### string Creates a simple prompt. If you hint enter, the prompt gets closed and next question will be asked. #### number Same as above, the entered value gets converted into a number. #### boolean Creates a boolean prompt. The anwser can be [y]es or [n]o. It gets re-asked if you enter something else then y, yes, n, no. #### array Prompt for entering a set of values. Each line is one set. It gets re-asked until a blank line was entered. #### input This field opens a multiline prompt. Hit **<ctrl>-d** to submit the prompt or **<ctrl>-c** to cancel it. ### Examples To see how it works, simply run `npx firescript exec examples/superprompt.fire` from the project dir.