@herodevs/cli 0.3.1 → 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +7 -0
- package/README.md +146 -6
- package/bin/dev.cmd +3 -0
- package/bin/dev.js +11 -0
- package/bin/run.cmd +3 -0
- package/bin/run.js +4 -0
- package/dist/api/client.d.ts +14 -0
- package/dist/api/client.js +42 -0
- package/dist/api/nes/nes.client.d.ts +16 -0
- package/dist/api/nes/nes.client.js +17 -0
- package/dist/api/queries/nes/sbom.d.ts +3 -0
- package/dist/api/queries/nes/sbom.js +29 -0
- package/{report-ingestion/src/lib/queries.d.ts → dist/api/queries/nes/telemetry.d.ts} +2 -2
- package/{report-ingestion/src/lib/queries.js → dist/api/queries/nes/telemetry.js} +3 -7
- package/dist/api/types/nes.types.d.ts +35 -0
- package/dist/api/types/nes.types.js +1 -0
- package/dist/commands/report/committers.d.ts +22 -0
- package/dist/commands/report/committers.js +104 -0
- package/dist/commands/report/purls.d.ts +13 -0
- package/dist/commands/report/purls.js +66 -0
- package/dist/commands/scan/eol.d.ts +16 -0
- package/dist/commands/scan/eol.js +71 -0
- package/dist/commands/scan/sbom.d.ts +18 -0
- package/dist/commands/scan/sbom.js +106 -0
- package/dist/config/update.d.ts +3 -0
- package/dist/config/update.js +7 -0
- package/dist/hooks/init/update.d.ts +2 -0
- package/dist/hooks/init/update.js +5 -0
- package/dist/hooks/prerun/CommandContextHook.d.ts +3 -0
- package/dist/hooks/prerun/CommandContextHook.js +8 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/service/committers.svc.d.ts +70 -0
- package/dist/service/committers.svc.js +175 -0
- package/dist/service/eol/cdx.svc.d.ts +22 -0
- package/dist/service/eol/cdx.svc.js +86 -0
- package/dist/service/eol/eol.svc.d.ts +34 -0
- package/dist/service/eol/eol.svc.js +86 -0
- package/dist/service/line.svc.d.ts +24 -0
- package/dist/service/line.svc.js +61 -0
- package/dist/service/log.svc.d.ts +10 -0
- package/dist/service/log.svc.js +20 -0
- package/dist/service/nes/nes.svc.d.ts +4 -0
- package/dist/service/nes/nes.svc.js +25 -0
- package/dist/service/purls.svc.d.ts +17 -0
- package/dist/service/purls.svc.js +29 -0
- package/dist/ui/eol.ui.d.ts +3 -0
- package/dist/ui/eol.ui.js +17 -0
- package/package.json +73 -16
- package/core-types/README.md +0 -11
- package/core-types/package.json +0 -12
- package/core-types/src/index.d.ts +0 -1
- package/core-types/src/index.js +0 -5
- package/core-types/src/index.js.map +0 -1
- package/core-types/src/lib/project-type.d.ts +0 -1
- package/core-types/src/lib/project-type.js +0 -3
- package/core-types/src/lib/project-type.js.map +0 -1
- package/init/README.md +0 -11
- package/init/package.json +0 -18
- package/init/src/index.d.ts +0 -1
- package/init/src/index.js +0 -5
- package/init/src/index.js.map +0 -1
- package/init/src/lib/configure-project.d.ts +0 -3
- package/init/src/lib/configure-project.js +0 -10
- package/init/src/lib/configure-project.js.map +0 -1
- package/init/src/lib/get-package-choices.d.ts +0 -2
- package/init/src/lib/get-package-choices.js +0 -16
- package/init/src/lib/get-package-choices.js.map +0 -1
- package/init/src/lib/get-product-choices.d.ts +0 -2
- package/init/src/lib/get-product-choices.js +0 -29
- package/init/src/lib/get-product-choices.js.map +0 -1
- package/init/src/lib/get-release-trains.d.ts +0 -2
- package/init/src/lib/get-release-trains.js +0 -57
- package/init/src/lib/get-release-trains.js.map +0 -1
- package/init/src/lib/init.d.ts +0 -5
- package/init/src/lib/init.js +0 -72
- package/init/src/lib/init.js.map +0 -1
- package/init/src/lib/mock-trains.d.ts +0 -2
- package/init/src/lib/mock-trains.js +0 -190
- package/init/src/lib/mock-trains.js.map +0 -1
- package/init/src/lib/models/choice.d.ts +0 -4
- package/init/src/lib/models/choice.js +0 -3
- package/init/src/lib/models/choice.js.map +0 -1
- package/init/src/lib/models/entry.d.ts +0 -6
- package/init/src/lib/models/entry.js +0 -3
- package/init/src/lib/models/entry.js.map +0 -1
- package/init/src/lib/models/index.d.ts +0 -5
- package/init/src/lib/models/index.js +0 -9
- package/init/src/lib/models/index.js.map +0 -1
- package/init/src/lib/models/package-version.d.ts +0 -14
- package/init/src/lib/models/package-version.js +0 -3
- package/init/src/lib/models/package-version.js.map +0 -1
- package/init/src/lib/models/product.d.ts +0 -5
- package/init/src/lib/models/product.js +0 -3
- package/init/src/lib/models/product.js.map +0 -1
- package/init/src/lib/models/release-train.d.ts +0 -9
- package/init/src/lib/models/release-train.js +0 -3
- package/init/src/lib/models/release-train.js.map +0 -1
- package/init/src/lib/npm/configure-npm-project.d.ts +0 -2
- package/init/src/lib/npm/configure-npm-project.js +0 -59
- package/init/src/lib/npm/configure-npm-project.js.map +0 -1
- package/init/src/lib/verify-project-type.d.ts +0 -6
- package/init/src/lib/verify-project-type.js +0 -19
- package/init/src/lib/verify-project-type.js.map +0 -1
- package/report-committers/README.md +0 -11
- package/report-committers/package.json +0 -15
- package/report-committers/src/index.d.ts +0 -1
- package/report-committers/src/index.js +0 -5
- package/report-committers/src/index.js.map +0 -1
- package/report-committers/src/lib/committers.d.ts +0 -11
- package/report-committers/src/lib/committers.js +0 -106
- package/report-committers/src/lib/committers.js.map +0 -1
- package/report-committers/src/lib/constants.d.ts +0 -4
- package/report-committers/src/lib/constants.js +0 -8
- package/report-committers/src/lib/constants.js.map +0 -1
- package/report-committers/src/lib/get-committer-counts.d.ts +0 -3
- package/report-committers/src/lib/get-committer-counts.js +0 -33
- package/report-committers/src/lib/get-committer-counts.js.map +0 -1
- package/report-committers/src/lib/parse-date-flags.d.ts +0 -4
- package/report-committers/src/lib/parse-date-flags.js +0 -11
- package/report-committers/src/lib/parse-date-flags.js.map +0 -1
- package/report-committers/src/lib/parse-git-log-entries.d.ts +0 -2
- package/report-committers/src/lib/parse-git-log-entries.js +0 -11
- package/report-committers/src/lib/parse-git-log-entries.js.map +0 -1
- package/report-committers/src/lib/parse-monthly.d.ts +0 -4
- package/report-committers/src/lib/parse-monthly.js +0 -56
- package/report-committers/src/lib/parse-monthly.js.map +0 -1
- package/report-committers/src/lib/types.d.ts +0 -27
- package/report-committers/src/lib/types.js +0 -3
- package/report-committers/src/lib/types.js.map +0 -1
- package/report-diagnostics/README.md +0 -11
- package/report-diagnostics/package.json +0 -15
- package/report-diagnostics/src/index.d.ts +0 -1
- package/report-diagnostics/src/index.js +0 -5
- package/report-diagnostics/src/index.js.map +0 -1
- package/report-diagnostics/src/lib/diagnostics.d.ts +0 -7
- package/report-diagnostics/src/lib/diagnostics.js +0 -94
- package/report-diagnostics/src/lib/diagnostics.js.map +0 -1
- package/report-diagnostics/src/lib/get-diagnostic-types.d.ts +0 -4
- package/report-diagnostics/src/lib/get-diagnostic-types.js +0 -15
- package/report-diagnostics/src/lib/get-diagnostic-types.js.map +0 -1
- package/report-diagnostics/src/lib/get-file-contents.d.ts +0 -1
- package/report-diagnostics/src/lib/get-file-contents.js +0 -12
- package/report-diagnostics/src/lib/get-file-contents.js.map +0 -1
- package/report-diagnostics/src/lib/get-package-json-section.d.ts +0 -1
- package/report-diagnostics/src/lib/get-package-json-section.js +0 -15
- package/report-diagnostics/src/lib/get-package-json-section.js.map +0 -1
- package/report-ingestion/README.md +0 -11
- package/report-ingestion/package.json +0 -13
- package/report-ingestion/src/index.d.ts +0 -1
- package/report-ingestion/src/index.js +0 -5
- package/report-ingestion/src/index.js.map +0 -1
- package/report-ingestion/src/lib/ingestion.d.ts +0 -3
- package/report-ingestion/src/lib/ingestion.js +0 -40
- package/report-ingestion/src/lib/ingestion.js.map +0 -1
- package/report-ingestion/src/lib/prompts.d.ts +0 -5
- package/report-ingestion/src/lib/prompts.js +0 -46
- package/report-ingestion/src/lib/prompts.js.map +0 -1
- package/report-ingestion/src/lib/queries.js.map +0 -1
- package/report-ingestion/src/lib/send-manifest.d.ts +0 -10
- package/report-ingestion/src/lib/send-manifest.js +0 -129
- package/report-ingestion/src/lib/send-manifest.js.map +0 -1
- package/report-ingestion/src/lib/types.d.ts +0 -6
- package/report-ingestion/src/lib/types.js +0 -3
- package/report-ingestion/src/lib/types.js.map +0 -1
- package/sea-config.json +0 -5
- package/src/lib/cli.d.ts +0 -1
- package/src/lib/cli.js +0 -22
- package/src/lib/cli.js.map +0 -1
- package/src/lib/create-group-command.d.ts +0 -2
- package/src/lib/create-group-command.js +0 -28
- package/src/lib/create-group-command.js.map +0 -1
- package/src/lib/ensure-version.d.ts +0 -2
- package/src/lib/ensure-version.js +0 -71
- package/src/lib/ensure-version.js.map +0 -1
- package/src/lib/get-commands.d.ts +0 -2
- package/src/lib/get-commands.js +0 -27
- package/src/lib/get-commands.js.map +0 -1
- package/src/lib/log-colors.d.ts +0 -28
- package/src/lib/log-colors.js +0 -9
- package/src/lib/log-colors.js.map +0 -1
- package/src/main.d.ts +0 -2
- package/src/main.js +0 -6
- package/src/main.js.map +0 -1
- package/tracker-init/README.md +0 -11
- package/tracker-init/package.json +0 -15
- package/tracker-init/src/index.d.ts +0 -1
- package/tracker-init/src/index.js +0 -5
- package/tracker-init/src/index.js.map +0 -1
- package/tracker-init/src/lib/default-config.d.ts +0 -2
- package/tracker-init/src/lib/default-config.js +0 -20
- package/tracker-init/src/lib/default-config.js.map +0 -1
- package/tracker-init/src/lib/init.d.ts +0 -5
- package/tracker-init/src/lib/init.js +0 -25
- package/tracker-init/src/lib/init.js.map +0 -1
- package/tracker-run/README.md +0 -11
- package/tracker-run/package.json +0 -18
- package/tracker-run/src/index.d.ts +0 -1
- package/tracker-run/src/index.js +0 -5
- package/tracker-run/src/index.js.map +0 -1
- package/tracker-run/src/lib/get-data-filepath.d.ts +0 -1
- package/tracker-run/src/lib/get-data-filepath.js +0 -8
- package/tracker-run/src/lib/get-data-filepath.js.map +0 -1
- package/tracker-run/src/lib/get-data.d.ts +0 -1
- package/tracker-run/src/lib/get-data.js +0 -14
- package/tracker-run/src/lib/get-data.js.map +0 -1
- package/tracker-run/src/lib/get-git-commit.d.ts +0 -4
- package/tracker-run/src/lib/get-git-commit.js +0 -32
- package/tracker-run/src/lib/get-git-commit.js.map +0 -1
- package/tracker-run/src/lib/process-category.d.ts +0 -2
- package/tracker-run/src/lib/process-category.js +0 -151
- package/tracker-run/src/lib/process-category.js.map +0 -1
- package/tracker-run/src/lib/process-config.d.ts +0 -2
- package/tracker-run/src/lib/process-config.js +0 -19
- package/tracker-run/src/lib/process-config.js.map +0 -1
- package/tracker-run/src/lib/run.d.ts +0 -7
- package/tracker-run/src/lib/run.js +0 -29
- package/tracker-run/src/lib/run.js.map +0 -1
- package/tracker-run/src/lib/save-results.d.ts +0 -2
- package/tracker-run/src/lib/save-results.js +0 -19
- package/tracker-run/src/lib/save-results.js.map +0 -1
- package/tracker-shared/README.md +0 -11
- package/tracker-shared/package.json +0 -12
- package/tracker-shared/src/index.d.ts +0 -2
- package/tracker-shared/src/index.js +0 -14
- package/tracker-shared/src/index.js.map +0 -1
- package/tracker-shared/src/lib/models/aggregate-result.d.ts +0 -4
- package/tracker-shared/src/lib/models/aggregate-result.js +0 -3
- package/tracker-shared/src/lib/models/aggregate-result.js.map +0 -1
- package/tracker-shared/src/lib/models/category-result.d.ts +0 -7
- package/tracker-shared/src/lib/models/category-result.js +0 -3
- package/tracker-shared/src/lib/models/category-result.js.map +0 -1
- package/tracker-shared/src/lib/models/category.d.ts +0 -9
- package/tracker-shared/src/lib/models/category.js +0 -3
- package/tracker-shared/src/lib/models/category.js.map +0 -1
- package/tracker-shared/src/lib/models/config.d.ts +0 -8
- package/tracker-shared/src/lib/models/config.js +0 -3
- package/tracker-shared/src/lib/models/config.js.map +0 -1
- package/tracker-shared/src/lib/models/file-result.d.ts +0 -5
- package/tracker-shared/src/lib/models/file-result.js +0 -3
- package/tracker-shared/src/lib/models/file-result.js.map +0 -1
- package/tracker-shared/src/lib/models/index.d.ts +0 -8
- package/tracker-shared/src/lib/models/index.js +0 -12
- package/tracker-shared/src/lib/models/index.js.map +0 -1
- package/tracker-shared/src/lib/models/process-result.d.ts +0 -6
- package/tracker-shared/src/lib/models/process-result.js +0 -3
- package/tracker-shared/src/lib/models/process-result.js.map +0 -1
- package/tracker-shared/src/lib/models/result.d.ts +0 -11
- package/tracker-shared/src/lib/models/result.js +0 -3
- package/tracker-shared/src/lib/models/result.js.map +0 -1
- package/tracker-shared/src/lib/models/total-result.d.ts +0 -4
- package/tracker-shared/src/lib/models/total-result.js +0 -3
- package/tracker-shared/src/lib/models/total-result.js.map +0 -1
- package/tracker-shared/src/lib/read-config.d.ts +0 -2
- package/tracker-shared/src/lib/read-config.js +0 -13
- package/tracker-shared/src/lib/read-config.js.map +0 -1
- package/utility/README.md +0 -11
- package/utility/package.json +0 -13
- package/utility/src/index.d.ts +0 -4
- package/utility/src/index.js +0 -8
- package/utility/src/index.js.map +0 -1
- package/utility/src/lib/get-project-types.d.ts +0 -2
- package/utility/src/lib/get-project-types.js +0 -13
- package/utility/src/lib/get-project-types.js.map +0 -1
- package/utility/src/lib/get-root-dir.d.ts +0 -1
- package/utility/src/lib/get-root-dir.js +0 -12
- package/utility/src/lib/get-root-dir.js.map +0 -1
- package/utility/src/lib/run-command.d.ts +0 -1
- package/utility/src/lib/run-command.js +0 -31
- package/utility/src/lib/run-command.js.map +0 -1
- package/utility/src/lib/sort-by-name.d.ts +0 -3
- package/utility/src/lib/sort-by-name.js +0 -7
- package/utility/src/lib/sort-by-name.js.map +0 -1
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.reportCommittersCommand = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const utility_1 = require("../../../utility/src");
|
|
6
|
-
const date_fns_1 = require("date-fns");
|
|
7
|
-
const constants_1 = require("./constants");
|
|
8
|
-
const get_committer_counts_1 = require("./get-committer-counts");
|
|
9
|
-
const parse_date_flags_1 = require("./parse-date-flags");
|
|
10
|
-
const parse_git_log_entries_1 = require("./parse-git-log-entries");
|
|
11
|
-
const parse_monthly_1 = require("./parse-monthly");
|
|
12
|
-
exports.reportCommittersCommand = {
|
|
13
|
-
command: 'committers',
|
|
14
|
-
describe: 'show git committers',
|
|
15
|
-
aliases: ['git'],
|
|
16
|
-
builder: {
|
|
17
|
-
beforeDate: {
|
|
18
|
-
alias: 's',
|
|
19
|
-
default: (0, date_fns_1.format)(new Date(), constants_1.dateFormat),
|
|
20
|
-
describe: `End Date (format: ${constants_1.dateFormat})`,
|
|
21
|
-
string: true,
|
|
22
|
-
},
|
|
23
|
-
afterDate: {
|
|
24
|
-
alias: 'e',
|
|
25
|
-
describe: `Start Date (format: ${constants_1.dateFormat})`,
|
|
26
|
-
required: false,
|
|
27
|
-
default: (0, date_fns_1.format)((0, date_fns_1.subMonths)(new Date(), constants_1.monthsToSubtract), constants_1.dateFormat),
|
|
28
|
-
},
|
|
29
|
-
exclude: {
|
|
30
|
-
alias: 'x',
|
|
31
|
-
array: true,
|
|
32
|
-
describe: 'Path Exclusions (eg -x="./src/bin" -x="./dist")',
|
|
33
|
-
required: false,
|
|
34
|
-
},
|
|
35
|
-
json: {
|
|
36
|
-
describe: 'Output to JSON format',
|
|
37
|
-
required: false,
|
|
38
|
-
default: false,
|
|
39
|
-
boolean: true,
|
|
40
|
-
},
|
|
41
|
-
directory: {
|
|
42
|
-
alias: 'd',
|
|
43
|
-
describe: 'Directory to search',
|
|
44
|
-
required: false,
|
|
45
|
-
string: true,
|
|
46
|
-
},
|
|
47
|
-
monthly: {
|
|
48
|
-
alias: 'm',
|
|
49
|
-
boolean: true,
|
|
50
|
-
describe: 'Break down by calendar month.',
|
|
51
|
-
required: false,
|
|
52
|
-
default: false,
|
|
53
|
-
},
|
|
54
|
-
},
|
|
55
|
-
handler: run,
|
|
56
|
-
};
|
|
57
|
-
function run(args) {
|
|
58
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
const { beforeDate, afterDate } = (0, parse_date_flags_1.parseDateFlags)(constants_1.dateFormat, args.beforeDate, args.afterDate);
|
|
60
|
-
const beforeDateEndOfDay = (0, date_fns_1.formatISO)((0, date_fns_1.addHours)((0, date_fns_1.addMinutes)((0, date_fns_1.addSeconds)(beforeDate, 59), 59), 23));
|
|
61
|
-
const ignores = args.exclude && args.exclude.length ? `-- . "!(${args.exclude.join('|')})"` : '';
|
|
62
|
-
let gitCommand = `git log --since "${afterDate}" --until "${beforeDateEndOfDay}" --pretty=format:${constants_1.gitOutputFormat} ${ignores}`;
|
|
63
|
-
const cwd = args.directory;
|
|
64
|
-
if (cwd) {
|
|
65
|
-
// According to git documentation, the -- is used to separate the options from the pathspecs
|
|
66
|
-
// https://git-scm.com/docs/git-log#Documentation/git-log.txt---ltpathgt82308203
|
|
67
|
-
gitCommand = `${gitCommand} -- ${cwd}`;
|
|
68
|
-
}
|
|
69
|
-
const result = yield (0, utility_1.runCommand)(gitCommand);
|
|
70
|
-
const rawEntries = result.split('\n');
|
|
71
|
-
if (rawEntries.length === 1 && rawEntries[0] === '') {
|
|
72
|
-
const beforeDateStr = (0, date_fns_1.format)(beforeDate, 'yyyy-MM-dd');
|
|
73
|
-
const afterDateStr = (0, date_fns_1.format)(afterDate, 'yyyy-MM-dd');
|
|
74
|
-
console.log(`No commits found between ${afterDateStr} and ${beforeDateStr}`);
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
const entries = (0, parse_git_log_entries_1.parseGitLogEntries)(rawEntries);
|
|
78
|
-
if (args.monthly) {
|
|
79
|
-
const monthly = (0, parse_monthly_1.parseMonthly)(afterDate, beforeDate, entries);
|
|
80
|
-
if (args.json) {
|
|
81
|
-
(0, parse_monthly_1.outputMonthlyCommittersJson)(monthly);
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
(0, parse_monthly_1.outputMonthlyCommitters)(monthly);
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
const committerCounts = (0, get_committer_counts_1.getCommitterCounts)(entries);
|
|
88
|
-
if (args.json) {
|
|
89
|
-
outputCommittersJson(committerCounts);
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
outputCommitters(committerCounts);
|
|
93
|
-
}
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
function outputCommitters(committerCounts) {
|
|
97
|
-
console.table(committerCounts.map((c) => ({
|
|
98
|
-
Committer: c.name,
|
|
99
|
-
Commits: c.count,
|
|
100
|
-
'Last Commit Date': c.lastCommitDate,
|
|
101
|
-
})));
|
|
102
|
-
}
|
|
103
|
-
function outputCommittersJson(committerCounts) {
|
|
104
|
-
console.log(JSON.stringify(committerCounts, null, 2));
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=committers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"committers.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/committers.ts"],"names":[],"mappings":";;;;AAAA,+CAA+C;AAC/C,uCAA0F;AAE1F,2CAA4E;AAC5E,iEAA4D;AAC5D,yDAAoD;AACpD,mEAA6D;AAC7D,mDAIyB;AAYZ,QAAA,uBAAuB,GAAmC;IACrE,OAAO,EAAE,YAAY;IACrB,QAAQ,EAAE,qBAAqB;IAC/B,OAAO,EAAE,CAAC,KAAK,CAAC;IAChB,OAAO,EAAE;QACP,UAAU,EAAE;YACV,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,IAAA,iBAAM,EAAC,IAAI,IAAI,EAAE,EAAE,sBAAU,CAAC;YACvC,QAAQ,EAAE,qBAAqB,sBAAU,GAAG;YAC5C,MAAM,EAAE,IAAI;SACb;QACD,SAAS,EAAE;YACT,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,uBAAuB,sBAAU,GAAG;YAC9C,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,IAAA,iBAAM,EAAC,IAAA,oBAAS,EAAC,IAAI,IAAI,EAAE,EAAE,4BAAgB,CAAC,EAAE,sBAAU,CAAC;SACrE;QACD,OAAO,EAAE;YACP,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,iDAAiD;YAC3D,QAAQ,EAAE,KAAK;SAChB;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,uBAAuB;YACjC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,IAAI;SACd;QACD,SAAS,EAAE;YACT,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,qBAAqB;YAC/B,QAAQ,EAAE,KAAK;YACf,MAAM,EAAE,IAAI;SACb;QACD,OAAO,EAAE;YACP,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,+BAA+B;YACzC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;SACf;KACkC;IACrC,OAAO,EAAE,GAAG;CACb,CAAC;AAEF,SAAe,GAAG,CAAC,IAAiC;;QAClD,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAA,iCAAc,EAAC,sBAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9F,MAAM,kBAAkB,GAAG,IAAA,oBAAS,EAAC,IAAA,mBAAQ,EAAC,IAAA,qBAAU,EAAC,IAAA,qBAAU,EAAC,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAE/F,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjG,IAAI,UAAU,GAAG,oBAAoB,SAAS,cAAc,kBAAkB,qBAAqB,2BAAe,IAAI,OAAO,EAAE,CAAC;QAEhI,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QAE3B,IAAI,GAAG,EAAE,CAAC;YACR,4FAA4F;YAC5F,gFAAgF;YAChF,UAAU,GAAG,GAAG,UAAU,OAAO,GAAG,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAU,EAAC,UAAU,CAAC,CAAC;QAE5C,MAAM,UAAU,GAAI,MAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACpD,MAAM,aAAa,GAAG,IAAA,iBAAM,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACvD,MAAM,YAAY,GAAG,IAAA,iBAAM,EAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,4BAA4B,YAAY,QAAQ,aAAa,EAAE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,0CAAkB,EAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,IAAA,4BAAY,EAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC7D,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,IAAA,2CAA2B,EAAC,OAAO,CAAC,CAAC;gBACrC,OAAO;YACT,CAAC;YACD,IAAA,uCAAuB,EAAC,OAAO,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,IAAA,yCAAkB,EAAC,OAAO,CAAC,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,oBAAoB,CAAC,eAAe,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CAAA;AAED,SAAS,gBAAgB,CAAC,eAAiC;IACzD,OAAO,CAAC,KAAK,CACX,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,SAAS,EAAE,CAAC,CAAC,IAAI;QACjB,OAAO,EAAE,CAAC,CAAC,KAAK;QAChB,kBAAkB,EAAE,CAAC,CAAC,cAAc;KACrC,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,eAAiC;IAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.gitOutputFormat = exports.monthsToSubtract = exports.gammaDelimiter = exports.dateFormat = void 0;
|
|
4
|
-
exports.dateFormat = 'yyyy-MM-dd';
|
|
5
|
-
exports.gammaDelimiter = 'ΓΓΓΓ';
|
|
6
|
-
exports.monthsToSubtract = 12;
|
|
7
|
-
exports.gitOutputFormat = `"${['%h', '%an', '%ad'].join(exports.gammaDelimiter)}"`;
|
|
8
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,YAAY,CAAC;AAC1B,QAAA,cAAc,GAAG,MAAM,CAAC;AACxB,QAAA,gBAAgB,GAAG,EAAE,CAAC;AACtB,QAAA,eAAe,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,sBAAc,CAAC,GAAG,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getCommitterCounts = getCommitterCounts;
|
|
4
|
-
exports.getLastCommitDatePerUser = getLastCommitDatePerUser;
|
|
5
|
-
function getCommitterCounts(entries) {
|
|
6
|
-
var _a;
|
|
7
|
-
const lastCommits = getLastCommitDatePerUser(entries);
|
|
8
|
-
const counts = new Map();
|
|
9
|
-
for (const { committer } of entries) {
|
|
10
|
-
if (!counts.has(committer)) {
|
|
11
|
-
counts.set(committer, {
|
|
12
|
-
name: committer,
|
|
13
|
-
count: 0,
|
|
14
|
-
lastCommitDate: (_a = lastCommits[committer]) !== null && _a !== void 0 ? _a : '',
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
counts.get(committer).count++;
|
|
18
|
-
}
|
|
19
|
-
return Array.from(counts.values()).sort((a, b) => b.count - a.count);
|
|
20
|
-
}
|
|
21
|
-
function getLastCommitDatePerUser(entries) {
|
|
22
|
-
const lastCommitDates = {};
|
|
23
|
-
for (const { committer, date } of entries) {
|
|
24
|
-
if (Number.isNaN(date.getTime()))
|
|
25
|
-
continue;
|
|
26
|
-
const currentTimestamp = date.getTime();
|
|
27
|
-
if (!lastCommitDates[committer] || currentTimestamp > Date.parse(lastCommitDates[committer])) {
|
|
28
|
-
lastCommitDates[committer] = date.toLocaleString('en-US', { timeZone: 'UTC' });
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return lastCommitDates;
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=get-committer-counts.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-committer-counts.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/get-committer-counts.ts"],"names":[],"mappings":";;AAEA,gDAgBC;AAED,4DAaC;AA/BD,SAAgB,kBAAkB,CAAC,OAAiB;;IAClD,MAAM,WAAW,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEjD,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE;gBACpB,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,CAAC;gBACR,cAAc,EAAE,MAAA,WAAW,CAAC,SAAS,CAAC,mCAAI,EAAE;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC;AAED,SAAgB,wBAAwB,CAAC,OAAiB;IACxD,MAAM,eAAe,GAA4B,EAAE,CAAC;IAEpD,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;QAC1C,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAAE,SAAS;QAE3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAExC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC7F,eAAe,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseDateFlags = parseDateFlags;
|
|
4
|
-
const date_fns_1 = require("date-fns");
|
|
5
|
-
function parseDateFlags(dateFormat, beforeDate, afterDate) {
|
|
6
|
-
return {
|
|
7
|
-
afterDate: (0, date_fns_1.parse)(afterDate, dateFormat, new Date()),
|
|
8
|
-
beforeDate: (0, date_fns_1.parse)(beforeDate, dateFormat, new Date()),
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=parse-date-flags.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse-date-flags.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-date-flags.ts"],"names":[],"mappings":";;AAEA,wCAKC;AAPD,uCAAiC;AAEjC,SAAgB,cAAc,CAAC,UAAkB,EAAE,UAAkB,EAAE,SAAiB;IACtF,OAAO;QACL,SAAS,EAAE,IAAA,gBAAK,EAAC,SAAS,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;QACnD,UAAU,EAAE,IAAA,gBAAK,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;KACtD,CAAC;AACJ,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseGitLogEntries = parseGitLogEntries;
|
|
4
|
-
const constants_1 = require("./constants");
|
|
5
|
-
function parseGitLogEntries(entries) {
|
|
6
|
-
return entries.map((entry) => {
|
|
7
|
-
const [commitHash, committer, date] = entry.split(constants_1.gammaDelimiter);
|
|
8
|
-
return { commitHash, committer, date: new Date(date) };
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=parse-git-log-entries.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse-git-log-entries.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-git-log-entries.ts"],"names":[],"mappings":";;AAGA,gDAKC;AARD,2CAA6C;AAG7C,SAAgB,kBAAkB,CAAC,OAAiB;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,0BAAc,CAAC,CAAC;QAClE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,EAAY,CAAC;IACnE,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { Commit, MonthlyData } from './types';
|
|
2
|
-
export declare function parseMonthly(startDate: Date, endDate: Date, entries: Commit[]): MonthlyData[];
|
|
3
|
-
export declare function outputMonthlyCommitters(commits: MonthlyData[]): void;
|
|
4
|
-
export declare function outputMonthlyCommittersJson(commits: MonthlyData[]): void;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseMonthly = parseMonthly;
|
|
4
|
-
exports.outputMonthlyCommitters = outputMonthlyCommitters;
|
|
5
|
-
exports.outputMonthlyCommittersJson = outputMonthlyCommittersJson;
|
|
6
|
-
const date_fns_1 = require("date-fns");
|
|
7
|
-
function parseMonthly(startDate, endDate, entries) {
|
|
8
|
-
const monthly = [];
|
|
9
|
-
const range = (0, date_fns_1.eachMonthOfInterval)({
|
|
10
|
-
start: startDate,
|
|
11
|
-
end: endDate,
|
|
12
|
-
});
|
|
13
|
-
for (let idx = 0; idx < range.length - 1; idx++) {
|
|
14
|
-
// `convertToUTC` is an awful hack to convert the date to UTC
|
|
15
|
-
// This is needed because the date-fns eachMonthOfInterval function
|
|
16
|
-
// is not timezone aware and will return the date in the local timezone
|
|
17
|
-
// Refs: https://github.com/date-fns/date-fns/issues/3097
|
|
18
|
-
const [start, end] = [range[idx], range[idx + 1]];
|
|
19
|
-
const month = {
|
|
20
|
-
month: (0, date_fns_1.format)(start, 'LLLL yyyy'),
|
|
21
|
-
start: (0, date_fns_1.max)([start, startDate]),
|
|
22
|
-
end: (0, date_fns_1.min)([end, endDate]),
|
|
23
|
-
committers: {},
|
|
24
|
-
};
|
|
25
|
-
for (const rec of entries) {
|
|
26
|
-
if ((0, date_fns_1.isWithinInterval)(rec.date, { start, end })) {
|
|
27
|
-
month.committers[rec.committer] = (month.committers[rec.committer] || 0) + 1;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
if (Object.keys(month.committers).length > 0) {
|
|
31
|
-
monthly.push(month);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return monthly;
|
|
35
|
-
}
|
|
36
|
-
function convertToUTC(date) {
|
|
37
|
-
const timezoneOffset = date.getTimezoneOffset() * -1;
|
|
38
|
-
return new Date(date.getTime() + timezoneOffset * 60000);
|
|
39
|
-
}
|
|
40
|
-
function monthlyDataHumanReadable(data) {
|
|
41
|
-
const totalCommits = Object.values(data.committers).reduce((sum, count) => sum + count);
|
|
42
|
-
return {
|
|
43
|
-
month: data.month,
|
|
44
|
-
start: (0, date_fns_1.format)(data.start, 'yyyy-MM-dd'),
|
|
45
|
-
end: (0, date_fns_1.format)(data.end, 'yyyy-MM-dd'),
|
|
46
|
-
totalCommits,
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
function outputMonthlyCommitters(commits) {
|
|
50
|
-
const mapped = commits.map((c) => monthlyDataHumanReadable(c));
|
|
51
|
-
console.table(mapped);
|
|
52
|
-
}
|
|
53
|
-
function outputMonthlyCommittersJson(commits) {
|
|
54
|
-
console.log(JSON.stringify(commits, null, 2));
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=parse-monthly.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parse-monthly.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-monthly.ts"],"names":[],"mappings":";;AAGA,oCA+BC;AAiBD,0DAGC;AAED,kEAEC;AA1DD,uCAAmF;AAGnF,SAAgB,YAAY,CAAC,SAAe,EAAE,OAAa,EAAE,OAAiB;IAC5E,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,IAAA,8BAAmB,EAAC;QAChC,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,OAAO;KACb,CAAC,CAAC;IAEH,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;QAChD,6DAA6D;QAC7D,mEAAmE;QACnE,uEAAuE;QACvE,yDAAyD;QACzD,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,GAAgB;YACzB,KAAK,EAAE,IAAA,iBAAM,EAAC,KAAK,EAAE,WAAW,CAAC;YACjC,KAAK,EAAE,IAAA,cAAG,EAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC9B,GAAG,EAAE,IAAA,cAAG,EAAC,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACxB,UAAU,EAAE,EAAE;SACf,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,IAAA,2BAAgB,EAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;gBAC/C,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,IAAU;IAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;IACrD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,cAAc,GAAG,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAiB;IACjD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC;IACxF,OAAO;QACL,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAA,iBAAM,EAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC;QACvC,GAAG,EAAE,IAAA,iBAAM,EAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC;QACnC,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAgB,uBAAuB,CAAC,OAAsB;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED,SAAgB,2BAA2B,CAAC,OAAsB;IAChE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export type Commit = {
|
|
2
|
-
commitHash: string;
|
|
3
|
-
committer: string;
|
|
4
|
-
date: Date;
|
|
5
|
-
};
|
|
6
|
-
export type CommitterCommits = {
|
|
7
|
-
name: string;
|
|
8
|
-
commits: string[];
|
|
9
|
-
};
|
|
10
|
-
export type CommitterCount = {
|
|
11
|
-
name: string;
|
|
12
|
-
count: number;
|
|
13
|
-
lastCommitDate: string;
|
|
14
|
-
};
|
|
15
|
-
export type MonthlyData = {
|
|
16
|
-
month: string;
|
|
17
|
-
start: Date;
|
|
18
|
-
end: Date;
|
|
19
|
-
committers: Record<string, number>;
|
|
20
|
-
};
|
|
21
|
-
export type SortedCommitterInfo = {
|
|
22
|
-
committers: CommitterCommits[];
|
|
23
|
-
monthly: MonthlyData[];
|
|
24
|
-
};
|
|
25
|
-
export interface CommitterLastCommitDate {
|
|
26
|
-
[committer: string]: string;
|
|
27
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@herodevs/report-diagnostics",
|
|
3
|
-
"version": "0.0.1",
|
|
4
|
-
"dependencies": {
|
|
5
|
-
"@herodevs/utility": "^0.0.1",
|
|
6
|
-
"@inquirer/prompts": "^5.0.2",
|
|
7
|
-
"tslib": "^2.3.0",
|
|
8
|
-
"yargs": "^17.2.1"
|
|
9
|
-
},
|
|
10
|
-
"type": "commonjs",
|
|
11
|
-
"main": "./src/index.js",
|
|
12
|
-
"typings": "./src/index.d.ts",
|
|
13
|
-
"private": true,
|
|
14
|
-
"types": "./src/index.d.ts"
|
|
15
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './lib/diagnostics';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/report/diagnostics/src/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.reportDiagnosticsCommand = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const prompts_1 = require("@inquirer/prompts");
|
|
6
|
-
const utility_1 = require("../../../utility/src");
|
|
7
|
-
const get_package_json_section_1 = require("./get-package-json-section");
|
|
8
|
-
const get_file_contents_1 = require("./get-file-contents");
|
|
9
|
-
const get_diagnostic_types_1 = require("./get-diagnostic-types");
|
|
10
|
-
exports.reportDiagnosticsCommand = {
|
|
11
|
-
command: 'diagnostics',
|
|
12
|
-
describe: 'show diagnostic information',
|
|
13
|
-
aliases: ['diag', 'd'],
|
|
14
|
-
builder: {
|
|
15
|
-
all: {
|
|
16
|
-
describe: 'Return all available diagnostics',
|
|
17
|
-
required: false,
|
|
18
|
-
default: false,
|
|
19
|
-
boolean: true,
|
|
20
|
-
},
|
|
21
|
-
consent: {
|
|
22
|
-
describe: 'Agree to understanding that sensitive data may be outputted',
|
|
23
|
-
required: false,
|
|
24
|
-
default: false,
|
|
25
|
-
boolean: true,
|
|
26
|
-
},
|
|
27
|
-
},
|
|
28
|
-
handler: run,
|
|
29
|
-
};
|
|
30
|
-
function run(args) {
|
|
31
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
const consentPrompt = 'Data produced may contain sensitive data, please review before sharing it.';
|
|
33
|
-
if (!args.consent) {
|
|
34
|
-
const answer = yield (0, prompts_1.confirm)({
|
|
35
|
-
message: `${consentPrompt} Continue?`,
|
|
36
|
-
});
|
|
37
|
-
if (!answer) {
|
|
38
|
-
return;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
console.log(consentPrompt);
|
|
43
|
-
}
|
|
44
|
-
const diagTypeList = (0, get_diagnostic_types_1.getDiagnosticTypes)().map((d) => (Object.assign(Object.assign({}, d), { checked: true })));
|
|
45
|
-
const diagTypes = args.all
|
|
46
|
-
? diagTypeList.map((d) => d.value)
|
|
47
|
-
: yield (0, prompts_1.checkbox)({
|
|
48
|
-
message: 'select diagnostic(s) to run',
|
|
49
|
-
choices: diagTypeList,
|
|
50
|
-
required: true,
|
|
51
|
-
pageSize: diagTypeList.length,
|
|
52
|
-
});
|
|
53
|
-
for (let i = 0; i < diagTypes.length; i++) {
|
|
54
|
-
let output = '';
|
|
55
|
-
let title = '';
|
|
56
|
-
switch (diagTypes[i]) {
|
|
57
|
-
case 'dependencies':
|
|
58
|
-
title = 'Package JSON - dependencies';
|
|
59
|
-
output = (0, get_package_json_section_1.getPackageJsonSection)('dependencies');
|
|
60
|
-
break;
|
|
61
|
-
case 'devDependencies':
|
|
62
|
-
title = 'Package JSON - devDependencies';
|
|
63
|
-
output = (0, get_package_json_section_1.getPackageJsonSection)('devDependencies');
|
|
64
|
-
break;
|
|
65
|
-
case 'overrides':
|
|
66
|
-
title = 'Package JSON - overrides';
|
|
67
|
-
output = (0, get_package_json_section_1.getPackageJsonSection)('overrides');
|
|
68
|
-
break;
|
|
69
|
-
case 'npmrc':
|
|
70
|
-
title = '.npmrc file contents';
|
|
71
|
-
output = (0, get_file_contents_1.getFileContents)('.npmrc');
|
|
72
|
-
break;
|
|
73
|
-
case 'npm config':
|
|
74
|
-
try {
|
|
75
|
-
title = 'npm config results';
|
|
76
|
-
output = yield (0, utility_1.runCommand)('npm config get');
|
|
77
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
78
|
-
}
|
|
79
|
-
catch (e) {
|
|
80
|
-
output = e.stderr;
|
|
81
|
-
}
|
|
82
|
-
break;
|
|
83
|
-
case 'npm ls':
|
|
84
|
-
title = 'npm ls results';
|
|
85
|
-
output = yield (0, utility_1.runCommand)('npm ls --depth=1000');
|
|
86
|
-
break;
|
|
87
|
-
}
|
|
88
|
-
const titleMsg = `*** ${title} ***`;
|
|
89
|
-
const titleWrapper = '*'.repeat(titleMsg.length);
|
|
90
|
-
console.log(`${titleWrapper}\n${titleMsg}\n${titleWrapper}\n${output}\n`);
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=diagnostics.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDiagnosticTypes = getDiagnosticTypes;
|
|
4
|
-
function getDiagnosticTypes() {
|
|
5
|
-
const diagTypeList = [
|
|
6
|
-
{ name: 'Package JSON - dependencies', value: 'dependencies' },
|
|
7
|
-
{ name: 'Package JSON - devDependencies', value: 'devDependencies' },
|
|
8
|
-
{ name: 'Package JSON - overrides', value: 'overrides' },
|
|
9
|
-
{ name: '.npmrc file contents', value: 'npmrc' },
|
|
10
|
-
{ name: 'npm config', value: 'npm config' },
|
|
11
|
-
{ name: 'List of installed packages (npm ls)', value: 'npm ls' },
|
|
12
|
-
];
|
|
13
|
-
return diagTypeList;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=get-diagnostic-types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-diagnostic-types.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-diagnostic-types.ts"],"names":[],"mappings":";;AAAA,gDAUC;AAVD,SAAgB,kBAAkB;IAChC,MAAM,YAAY,GAAG;QACnB,EAAE,IAAI,EAAE,6BAA6B,EAAE,KAAK,EAAE,cAAc,EAAE;QAC9D,EAAE,IAAI,EAAE,gCAAgC,EAAE,KAAK,EAAE,iBAAiB,EAAE;QACpE,EAAE,IAAI,EAAE,0BAA0B,EAAE,KAAK,EAAE,WAAW,EAAE;QACxD,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE;QAChD,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;QAC3C,EAAE,IAAI,EAAE,qCAAqC,EAAE,KAAK,EAAE,QAAQ,EAAE;KACjE,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function getFileContents(filePath: string): string;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getFileContents = getFileContents;
|
|
4
|
-
const fs_1 = require("fs");
|
|
5
|
-
function getFileContents(filePath) {
|
|
6
|
-
if (!(0, fs_1.existsSync)(filePath)) {
|
|
7
|
-
return `${filePath} not found`;
|
|
8
|
-
}
|
|
9
|
-
const diagData = (0, fs_1.readFileSync)(filePath, 'utf8');
|
|
10
|
-
return diagData;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=get-file-contents.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-file-contents.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-file-contents.ts"],"names":[],"mappings":";;AAEA,0CAMC;AARD,2BAA8C;AAE9C,SAAgB,eAAe,CAAC,QAAgB;IAC9C,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,QAAQ,YAAY,CAAC;IACjC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAA,iBAAY,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function getPackageJsonSection(section: 'dependencies' | 'devDependencies' | 'overrides'): string;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPackageJsonSection = getPackageJsonSection;
|
|
4
|
-
const get_file_contents_1 = require("./get-file-contents");
|
|
5
|
-
function getPackageJsonSection(section) {
|
|
6
|
-
const filePath = 'package.json';
|
|
7
|
-
const pkg = JSON.parse((0, get_file_contents_1.getFileContents)(filePath));
|
|
8
|
-
const sectionData = pkg[section];
|
|
9
|
-
if (!sectionData) {
|
|
10
|
-
return `${section} not found in package.json`;
|
|
11
|
-
}
|
|
12
|
-
const diagData = JSON.stringify(sectionData, null, 2);
|
|
13
|
-
return diagData;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=get-package-json-section.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-package-json-section.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-package-json-section.ts"],"names":[],"mappings":";;AAEA,sDAWC;AAbD,2DAAsD;AAEtD,SAAgB,qBAAqB,CACnC,OAAyD;IAEzD,MAAM,QAAQ,GAAG,cAAc,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,mCAAe,EAAC,QAAQ,CAAC,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,GAAG,OAAO,4BAA4B,CAAC;IAChD,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@herodevs/report-ingestion",
|
|
3
|
-
"version": "0.0.1",
|
|
4
|
-
"dependencies": {
|
|
5
|
-
"tslib": "^2.3.0",
|
|
6
|
-
"isomorphic-fetch": "^3.0.0"
|
|
7
|
-
},
|
|
8
|
-
"type": "commonjs",
|
|
9
|
-
"main": "./src/index.js",
|
|
10
|
-
"typings": "./src/index.d.ts",
|
|
11
|
-
"private": true,
|
|
12
|
-
"types": "./src/index.d.ts"
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './lib/ingestion';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/report/ingestion/src/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC"}
|