From 452535b0142cf5a8fa8d61e6a71fd5cc4e800871 Mon Sep 17 00:00:00 2001 From: Richard Littauer Date: Tue, 17 Dec 2019 06:30:30 -0500 Subject: [PATCH] feat: add a month flag --- package-lock.json | 13 +++++++++++++ package.json | 1 + src/cli.js | 16 +++++++++++++--- 3 files changed, 27 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index e30ab98..0a839b6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5095,6 +5095,19 @@ "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "dev": true }, + "moment": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", + "integrity": "sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==" + }, + "month-before-after": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/month-before-after/-/month-before-after-1.0.0.tgz", + "integrity": "sha512-fJDbhg6BBpZj4e+0GZMPEtMbp8SAh9/XtK75BoBRenftz7OQJKIf56G5CIH7tjYkklJnNxzjY30+CzTPcgH6AA==", + "requires": { + "moment": "^2.24.0" + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", diff --git a/package.json b/package.json index 4c5bbfc..352a4f4 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,7 @@ "dependencies": { "csv-writer": "1.2.0", "meow": "^4.0.0", + "month-before-after": "^1.0.0", "persistent-cache": "^1.1.1" }, "devDependencies": { diff --git a/src/cli.js b/src/cli.js index c6ca1bf..4b7057c 100755 --- a/src/cli.js +++ b/src/cli.js @@ -2,6 +2,7 @@ 'use strict' const meow = require('meow') +const monthBeforeAfter = require('month-before-after') const main = require('./index') const done = require('./graphql').done const cache = require('./graphql').cache @@ -14,7 +15,7 @@ const cli = meow(` -t, --token - GitHub auth token to use -a, --after - Get contributions after date -b, --before - Get contributions before data - + -m, --month - Get contributions for a certain month this year (format: 'january') -o, --org - Search all repos within this organisation -r, --repo - Repository to search -u, --user - User to which repository belongs @@ -81,14 +82,23 @@ const cli = meow(` verbose: { type: 'boolean', alias: 'v' + }, + month: { + type: 'string', + alias: 'm' } } }) const token = cli.flags.t || process.env.GITHUB_TOKEN -const after = cli.flags.a ? new Date(cli.flags.a) : new Date(0) -const before = cli.flags.b ? new Date(cli.flags.b) : new Date() +let after = cli.flags.a ? new Date(cli.flags.a) : new Date(0) +let before = cli.flags.b ? new Date(cli.flags.b) : new Date() + +if (cli.flags.m) { + after = monthBeforeAfter(cli.flags.m).after + before = monthBeforeAfter(cli.flags.m).before +} if (cli.flags.wipeCache) { if (cli.flags.v) {