A simple and lightweight TypeScript-Class to create CLI-Applications on Node.js.
Run npm i milena
const milena = require("milena");
const pp = new milena.Prompt();
--> Example: pp.printLine();
Destroy stdin and exit process if necessary.
- exitProcess:Boolean
pp.close(true);
Set prompt which lets the user choose between two options.
- output:string
- charTrue:string
- charFalse:string
- msgTrue:string
- msgFalse:string
- abortOnWrongChar
let choose = await pp.choose("Choose X(=true) or Y(=false):", "x", "y", "X", "Y", false);
pp.print("Your Input: " + choose);
Set prompt for user-input.
- output:string
let input = await pp.input("Give me Input >>");
pp.print("Your Input: " + input);
Set prompt which lets the user select 0 or more options.
- output:string
- options:string[]
- min:number (not activated)
let options:string[] = ["Option 1", "Option 2", "Option 3"];
let multiselect = await pp.multiSelect("Select Options:", options, 0);
pp.print("Your Input: " + multiselect);
Print output to stdout in default-color (white).
- output:string|number|boolean
pp.print("Default-Text");
Print output to stdout in black color.
- output:string|number|boolean
pp.printColorBlack("Default-Text");
Print output to stdout in blue color.
- output:string|number|boolean
pp.printColorBlue("Default-Text");
Print output to stdout in cyan color.
- output:string|number|boolean
pp.printColorCyan("Default-Text");
Print output to stdout in green color.
- output:string|number|boolean
pp.printColorGreen("Default-Text");
Print output to stdout in magenta color.
- output:string|number|boolean
pp.printColorMagenta("Default-Text");
Print output to stdout in red color.
- output:string|number|boolean
pp.printColorRed("Default-Text");
Print output to stdout in white color.
- output:string|number|boolean
pp.printColorWhite("Default-Text");
Print output to stdout in yellow color.
- output:string|number|boolean
pp.printColorYellow("Default-Text");
Print output to stdout in command-color (green).
- output:string|number|boolean
pp.printCommand("Command-Text");
Print output to stdout in error-color (red).
- output:string|number|boolean
pp.printError("Error-Text");
Print output to stdout in input-color (white).
- output:string|number|boolean
pp.printInput("Input-Text");
Print a line to stdout in line-color (white). Line-width is defined in /lib/config.json
- NONE
pp.printLine();
Print output to stdout in option-color (yellow).
- output:string|number|boolean
pp.printOption("Option-Text");
Print output to stdout in selected-color (cyan).
- output:string|number|boolean
pp.printSelected("Selected-Text");
Print output to stdout in title-color (magenta).
- output:string|number|boolean
pp.printTitle("Title-Text");
Set prompt which lets the user select one option.
- output:string
- options:string[]
let options:string[] = ["Option 1", "Option 2", "Option 3"];
let select = await pp.select("Select one Option:", options);
pp.print("Your Input: " + select);
All colors are defined in /lib/config.json
In most cases, a CLI-Application needs to wait for User-Input, like in the Examples above. It is also possible, to use the methods without "await" for asynchronous and non-blocking code.
None
Gets back the following Types
- Array
- Boolean
- Number
- String
- none
import{getInputDataTypes} from "milena";
let types:string[] = getInputDataTypes();
Gets back the following Types
- Choose
- Input
- MultiSelect
- Select
- none
import{getInputTypes} from "milena";
let types:string[] = getInputTypes();