/// import {IListArguments} from '../cli'; import {Configuration, IConfiguration, ICommandConfiguration, ITemplateConfiguration, IVariableConfiguration} from '../core'; import {cyan, green, gray, red, yellow, italic} from 'chalk'; export const LIST = [ 'list', 'l', 'ls' ]; const generateLog: string = yellow( `ska generate` ); export const list: ( configuration: IConfiguration[], args: IListArguments ) => void = ( configuration, args ) => { if( !args.quiet ){ Configuration.paths.forEach( (path:string) => console.log( green( path ) ) ); console.log( `` ); } configuration.forEach( ( configurationElement: IConfiguration ) => { configurationElement = configurationElement; if( !args.quiet ) console.log( red( configurationElement.name.toUpperCase() ), "\n" ); let commands: ICommandConfiguration[] = configurationElement.definition; commands.forEach( ( command: ICommandConfiguration ) => { if( !args.quiet ){ let variables: string = command.variables .map( ( variable: IVariableConfiguration ) => `<${yellow( variable.id )}>` ) .join( ' ' ); console.log( ` ${generateLog} ${red(command.command)} ${variables} - ${command.info}` ); console.log( `` ); console.log( ` Source: ${command.template}` ) console.log( ` Destination: ${command.destination}` ) console.log( `` ); }else{ console.log( command.command ); } }); }); };