From 08460739edd6bd74762a49be82396b876ff987f5 Mon Sep 17 00:00:00 2001 From: Ajay Narain Mathur Date: Tue, 30 Jan 2018 22:46:05 +1100 Subject: [PATCH] moved flaghelper to util --- src/cli.js | 3 +-- src/{functions => utils}/flagHelper.js | 25 ++++++++++++------------- 2 files changed, 13 insertions(+), 15 deletions(-) rename src/{functions => utils}/flagHelper.js (58%) diff --git a/src/cli.js b/src/cli.js index 4f8d6006..56b85838 100644 --- a/src/cli.js +++ b/src/cli.js @@ -8,7 +8,7 @@ import { BoltError } from './utils/errors'; import cleanStack from 'clean-stack'; import * as commands from './commands'; import * as options from './utils/options'; -import * as flagHelpers from './functions/flagHelper'; +import * as flagHelpers from './utils/flagHelper'; const commandMap = { ADD: { add: true }, @@ -101,7 +101,6 @@ const commandMap = { }; function runCommandFromCli(args: options.Args, flags: options.Flags, pureArgs) { - console.log(flags); let flagsArgs = flagHelpers.identifyFlags(pureArgs); let { additionalArgs, updatedFlags } = flagHelpers.extractPossibleArgs(flags); diff --git a/src/functions/flagHelper.js b/src/utils/flagHelper.js similarity index 58% rename from src/functions/flagHelper.js rename to src/utils/flagHelper.js index 9dfc3e62..75bd0f7e 100644 --- a/src/functions/flagHelper.js +++ b/src/utils/flagHelper.js @@ -1,8 +1,9 @@ // @flow +import * as options from './options'; -const IS_BOOLEAN_FLAGS = { +const BOOLEAN_FLAGS = { '--dev': true, - '--peerdev': true + '--peer': true }; function isFlagWithValue(flag) { @@ -14,28 +15,26 @@ function isFlag(maybeFlag) { } export function identifyFlags(args: Array = []) { - let flags = []; + let flagsWithArgs = []; args.forEach((arg, index) => { if (isFlag(arg)) { - if (IS_BOOLEAN_FLAGS[arg]) { - flags.push(arg); + if (BOOLEAN_FLAGS[arg]) { + flagsWithArgs.push(arg); } else { - if (isFlagWithValue(arg)) { - flags.push(arg); - } else { - flags.push(arg, args[++index]); - } + index < args.length - 1 + ? flagsWithArgs.push(`${arg}=${arg[++index]}`) + : flagsWithArgs.push(args); } } }); - return flags; + return flagsWithArgs; } -export function extractPossibleArgs(flags = {}) { +export function extractPossibleArgs(flags: options.Flags = {}) { let additionalArgs = []; let updatedFlags = Object.assign({}, flags); Object.keys(updatedFlags).forEach(flag => { - if (IS_BOOLEAN_FLAGS['--' + flag]) { + if (BOOLEAN_FLAGS['--' + flag]) { additionalArgs.push(updatedFlags[flag]); updatedFlags[flag] = true; }