diff --git a/src/cli.ts b/src/cli.ts index 0de5ab3..4989718 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -9,7 +9,8 @@ program .name('random-bunny') .description('Get a random image url from a subreddit of your choosing') .version('2.2') - .option('-s, --subreddit ', 'The subreddit to search', 'rabbits'); + .option('-s, --subreddit ', 'The subreddit to search', 'rabbits') + .option('-j, --json', 'Output as JSON'); program.parse(); @@ -21,6 +22,12 @@ randomBunny(options.subreddit) const result = response.Result!; const outputLines: string[] = []; + + if (options.json) { + console.log(JSON.stringify(result)); + return; + } + outputLines.push(`Archived = ${result.Archived}`); outputLines.push(`Downvotes = ${result.Downs}`); outputLines.push(`Hidden = ${result.Hidden}`); diff --git a/src/contracts/ICliOptions.ts b/src/contracts/ICliOptions.ts index c85971d..5aab9da 100644 --- a/src/contracts/ICliOptions.ts +++ b/src/contracts/ICliOptions.ts @@ -1,3 +1,4 @@ export default interface ICliOptions { subreddit: string, + json?: boolean, } \ No newline at end of file