390cc103054c915c5f5fc122769e9b746c79a291
				
			
			
		
	
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			@sapphirecode/console-app
version: 2.1.x
read parameters from env, config files, console args or interactively
Installation
npm:
npm i --save @sapphirecode/console-app
yarn:
yarn add @sapphirecode/console-app
Usage
const {
  ArrayOption, // arrays made out of numbers, strings and booleans
  BooleanOption,
  FileOption, // paths that exist and are a file
  FolderOption, // paths that exist and are a folder
  NumberOption, // integer and float values
  IntegerOption, // only integer values
  PathOption, // paths that exist in the file system
  StringOption,
} = require('@sapphirecode/console-app');
const input = await new BooleanOption({
  name: 'foo', // option name used in configs and console arguments
  
  // optional settings:
  default: false, // default value
  sources: {
    configs: [], // config files to read from. none by default
    interactive: true, // use interactive prompts
    console: true // read from console arguments
    // environment is always on if the 'env' option below is specified
  },
  alias: 'f', // shorthand console argument name
  env: 'foo_env', // name of the environment variable to read from
  message: 'input foo', // message to display in interactive prompt
  error: 'failed to read foo', // message to display when input was invalid
  error_callback: (opt, val, err)=>{...}, // function to call when an option value could not be read
  exit_on_interrupt: true,  // exit program when user cancels the interactive prompt
}).parse();
config files can import other config files with #include. example:
#include base.json
{
  "foo": "bar"
}
config files are parsed using hjson
License
MIT © Timo Hocker timo@scode.ovh
Description
				
					Languages
				
				
								
								
									TypeScript
								
								96.5%
							
						
							
								
								
									JavaScript
								
								3.5%