Skip to content

Commit

Permalink
docs(command): add executable example commands
Browse files Browse the repository at this point in the history
  • Loading branch information
c4spar committed May 21, 2020
1 parent fa131eb commit 8fbe263
Show file tree
Hide file tree
Showing 5 changed files with 115 additions and 94 deletions.
6 changes: 1 addition & 5 deletions examples/command/custom-option-processing.ts
Expand Up @@ -3,14 +3,10 @@
import { Command } from '../../packages/command/lib/command.ts';

const { options } = await new Command()
.option( '-f, --float <value:number>', 'float argument' )
.option( '-i, --integer <value:number>', 'integer argument' )
.option( '-v, --variadic <value...:string>', 'repeatable value' )
.option( '-l, --list <items:string[]>', 'comma separated list' )
.option( '-o, --object <item:string>', 'map string to object', ( value: string ): { value: string } => {
return { value };
} )
.option( '-C, --color <item:string>', 'map string to object', {
.option( '-C, --color <item:string>', 'collect colors', {
collect: true,
value: ( value: string, previous: string[] = [] ): string[] => {

Expand Down
10 changes: 4 additions & 6 deletions examples/command/custom-option-type.ts
Expand Up @@ -7,15 +7,13 @@ const email = (): ITypeHandler<string> => {

const emailRegex: RegExp = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

return ( option: IFlagOptions, arg: IFlagArgument, value: string | false ): string | undefined => {
return ( option: IFlagOptions, arg: IFlagArgument, value: string ): string => {

if ( value ) {
if ( !emailRegex.test( value.toLowerCase() ) ) {
throw new Error( `Option --${ option.name } must be a valid email but got: ${ value }` );
}
if ( !emailRegex.test( value.toLowerCase() ) ) {
throw new Error( `Option --${ option.name } must be a valid email but got: ${ value }` );
}

return value || undefined;
return value;
};
};

Expand Down
2 changes: 1 addition & 1 deletion examples/command/environment-variables.ts
Expand Up @@ -6,4 +6,4 @@ await new Command()
.env( 'SOME_ENV_VAR=<value:number>', 'Description ...' )
.parse( Deno.args );

console.log( Deno.env().SOME_ENV_VAR );
console.log( Deno.env.get( 'SOME_ENV_VAR' ) );

0 comments on commit 8fbe263

Please sign in to comment.