@herodevs/cli 0.2.9 → 0.3.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/core-types/package.json +3 -2
- package/init/package.json +10 -3
- package/init/src/lib/configure-project.js +1 -2
- package/init/src/lib/configure-project.js.map +1 -1
- package/init/src/lib/get-package-choices.js +1 -2
- package/init/src/lib/get-package-choices.js.map +1 -1
- package/init/src/lib/get-product-choices.d.ts +1 -2
- package/init/src/lib/get-product-choices.js +18 -8
- package/init/src/lib/get-product-choices.js.map +1 -1
- package/init/src/lib/get-release-trains.d.ts +1 -2
- package/init/src/lib/get-release-trains.js +2 -8
- package/init/src/lib/get-release-trains.js.map +1 -1
- package/init/src/lib/init.js +28 -12
- package/init/src/lib/init.js.map +1 -1
- package/init/src/lib/npm/configure-npm-project.js +1 -2
- package/init/src/lib/npm/configure-npm-project.js.map +1 -1
- package/init/src/lib/verify-project-type.js +1 -2
- package/init/src/lib/verify-project-type.js.map +1 -1
- package/package.json +8 -3
- package/report-committers/package.json +7 -3
- package/report-committers/src/lib/committers.d.ts +4 -2
- package/report-committers/src/lib/committers.js +48 -45
- package/report-committers/src/lib/committers.js.map +1 -1
- package/report-committers/src/lib/get-committer-counts.d.ts +2 -1
- package/report-committers/src/lib/get-committer-counts.js +27 -12
- package/report-committers/src/lib/get-committer-counts.js.map +1 -1
- package/report-committers/src/lib/parse-date-flags.d.ts +3 -3
- package/report-committers/src/lib/parse-date-flags.js +4 -5
- package/report-committers/src/lib/parse-date-flags.js.map +1 -1
- package/report-committers/src/lib/parse-git-log-entries.js +1 -2
- package/report-committers/src/lib/parse-git-log-entries.js.map +1 -1
- package/report-committers/src/lib/parse-monthly.d.ts +4 -6
- package/report-committers/src/lib/parse-monthly.js +37 -22
- package/report-committers/src/lib/parse-monthly.js.map +1 -1
- package/report-committers/src/lib/types.d.ts +6 -5
- package/report-diagnostics/package.json +7 -3
- package/report-diagnostics/src/lib/get-diagnostic-types.js +1 -2
- package/report-diagnostics/src/lib/get-diagnostic-types.js.map +1 -1
- package/report-diagnostics/src/lib/get-file-contents.js +1 -2
- package/report-diagnostics/src/lib/get-file-contents.js.map +1 -1
- package/report-diagnostics/src/lib/get-package-json-section.js +1 -2
- package/report-diagnostics/src/lib/get-package-json-section.js.map +1 -1
- package/report-ingestion/README.md +11 -0
- package/report-ingestion/package.json +13 -0
- package/report-ingestion/src/index.d.ts +1 -0
- package/report-ingestion/src/index.js +5 -0
- package/report-ingestion/src/index.js.map +1 -0
- package/report-ingestion/src/lib/ingestion.d.ts +3 -0
- package/report-ingestion/src/lib/ingestion.js +40 -0
- package/report-ingestion/src/lib/ingestion.js.map +1 -0
- package/report-ingestion/src/lib/prompts.d.ts +5 -0
- package/report-ingestion/src/lib/prompts.js +46 -0
- package/report-ingestion/src/lib/prompts.js.map +1 -0
- package/report-ingestion/src/lib/queries.d.ts +2 -0
- package/report-ingestion/src/lib/queries.js +28 -0
- package/report-ingestion/src/lib/queries.js.map +1 -0
- package/report-ingestion/src/lib/send-manifest.d.ts +10 -0
- package/report-ingestion/src/lib/send-manifest.js +129 -0
- package/report-ingestion/src/lib/send-manifest.js.map +1 -0
- package/report-ingestion/src/lib/types.d.ts +6 -0
- package/report-ingestion/src/lib/types.js +3 -0
- package/report-ingestion/src/lib/types.js.map +1 -0
- package/src/lib/cli.js +3 -3
- package/src/lib/cli.js.map +1 -1
- package/src/lib/create-group-command.js +1 -2
- package/src/lib/create-group-command.js.map +1 -1
- package/src/lib/ensure-version.d.ts +1 -1
- package/src/lib/ensure-version.js +4 -8
- package/src/lib/ensure-version.js.map +1 -1
- package/src/lib/get-commands.js +13 -4
- package/src/lib/get-commands.js.map +1 -1
- package/src/lib/log-colors.js +1 -2
- package/src/lib/log-colors.js.map +1 -1
- package/tracker-init/package.json +7 -3
- package/tracker-run/package.json +10 -3
- package/tracker-run/src/lib/get-data-filepath.js +1 -2
- package/tracker-run/src/lib/get-data-filepath.js.map +1 -1
- package/tracker-run/src/lib/get-data.js +1 -2
- package/tracker-run/src/lib/get-data.js.map +1 -1
- package/tracker-run/src/lib/get-git-commit.js +1 -2
- package/tracker-run/src/lib/get-git-commit.js.map +1 -1
- package/tracker-run/src/lib/process-category.js +1 -2
- package/tracker-run/src/lib/process-category.js.map +1 -1
- package/tracker-run/src/lib/process-config.js +1 -2
- package/tracker-run/src/lib/process-config.js.map +1 -1
- package/tracker-run/src/lib/save-results.js +1 -2
- package/tracker-run/src/lib/save-results.js.map +1 -1
- package/tracker-shared/package.json +3 -2
- package/tracker-shared/src/lib/read-config.js +1 -2
- package/tracker-shared/src/lib/read-config.js.map +1 -1
- package/utility/package.json +4 -2
- package/utility/src/lib/get-project-types.js +1 -2
- package/utility/src/lib/get-project-types.js.map +1 -1
- package/utility/src/lib/get-root-dir.js +1 -2
- package/utility/src/lib/get-root-dir.js.map +1 -1
- package/utility/src/lib/run-command.js +1 -2
- package/utility/src/lib/run-command.js.map +1 -1
- package/utility/src/lib/sort-by-name.js +1 -2
- package/utility/src/lib/sort-by-name.js.map +1 -1
- package/report-committers/src/lib/collapse-and-sort-committer-info.d.ts +0 -2
- package/report-committers/src/lib/collapse-and-sort-committer-info.js +0 -31
- package/report-committers/src/lib/collapse-and-sort-committer-info.js.map +0 -1
- package/report-committers/src/lib/print-committers.d.ts +0 -0
- package/report-committers/src/lib/print-committers.js +0 -2
- package/report-committers/src/lib/print-committers.js.map +0 -1
- package/report-committers/src/lib/print-monthly.d.ts +0 -2
- package/report-committers/src/lib/print-monthly.js +0 -79
- package/report-committers/src/lib/print-monthly.js.map +0 -1
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { MonthlyData } from './types';
|
|
2
|
-
export declare function parseMonthly(startDate: Date, endDate: Date, entries:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
date: string;
|
|
6
|
-
}[]): MonthlyData[];
|
|
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,34 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseMonthly =
|
|
3
|
+
exports.parseMonthly = parseMonthly;
|
|
4
|
+
exports.outputMonthlyCommitters = outputMonthlyCommitters;
|
|
5
|
+
exports.outputMonthlyCommittersJson = outputMonthlyCommittersJson;
|
|
4
6
|
const date_fns_1 = require("date-fns");
|
|
5
7
|
function parseMonthly(startDate, endDate, entries) {
|
|
6
8
|
const monthly = [];
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
continue;
|
|
17
|
-
}
|
|
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
18
|
const [start, end] = [range[idx], range[idx + 1]];
|
|
19
19
|
const month = {
|
|
20
|
-
|
|
21
|
-
start,
|
|
22
|
-
end,
|
|
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
23
|
committers: {},
|
|
24
24
|
};
|
|
25
25
|
for (const rec of entries) {
|
|
26
|
-
if ((0, date_fns_1.isWithinInterval)(
|
|
27
|
-
month.committers[rec.committer] = month.committers[rec.committer] ||
|
|
28
|
-
month.committers[rec.committer].push({
|
|
29
|
-
hash: rec.commitHash,
|
|
30
|
-
date: rec.date,
|
|
31
|
-
});
|
|
26
|
+
if ((0, date_fns_1.isWithinInterval)(rec.date, { start, end })) {
|
|
27
|
+
month.committers[rec.committer] = (month.committers[rec.committer] || 0) + 1;
|
|
32
28
|
}
|
|
33
29
|
}
|
|
34
30
|
if (Object.keys(month.committers).length > 0) {
|
|
@@ -37,5 +33,24 @@ function parseMonthly(startDate, endDate, entries) {
|
|
|
37
33
|
}
|
|
38
34
|
return monthly;
|
|
39
35
|
}
|
|
40
|
-
|
|
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
|
+
}
|
|
41
56
|
//# sourceMappingURL=parse-monthly.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-monthly.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-monthly.ts"],"names":[],"mappings":"
|
|
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"}
|
|
@@ -10,17 +10,18 @@ export type CommitterCommits = {
|
|
|
10
10
|
export type CommitterCount = {
|
|
11
11
|
name: string;
|
|
12
12
|
count: number;
|
|
13
|
+
lastCommitDate: string;
|
|
13
14
|
};
|
|
14
15
|
export type MonthlyData = {
|
|
15
|
-
|
|
16
|
+
month: string;
|
|
16
17
|
start: Date;
|
|
17
18
|
end: Date;
|
|
18
|
-
committers: Record<string,
|
|
19
|
-
hash: string;
|
|
20
|
-
date: string;
|
|
21
|
-
}[]>;
|
|
19
|
+
committers: Record<string, number>;
|
|
22
20
|
};
|
|
23
21
|
export type SortedCommitterInfo = {
|
|
24
22
|
committers: CommitterCommits[];
|
|
25
23
|
monthly: MonthlyData[];
|
|
26
24
|
};
|
|
25
|
+
export interface CommitterLastCommitDate {
|
|
26
|
+
[committer: string]: string;
|
|
27
|
+
}
|
|
@@ -2,10 +2,14 @@
|
|
|
2
2
|
"name": "@herodevs/report-diagnostics",
|
|
3
3
|
"version": "0.0.1",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"
|
|
5
|
+
"@herodevs/utility": "^0.0.1",
|
|
6
|
+
"@inquirer/prompts": "^5.0.2",
|
|
7
|
+
"tslib": "^2.3.0",
|
|
8
|
+
"yargs": "^17.2.1"
|
|
6
9
|
},
|
|
7
10
|
"type": "commonjs",
|
|
8
11
|
"main": "./src/index.js",
|
|
9
12
|
"typings": "./src/index.d.ts",
|
|
10
|
-
"private": true
|
|
11
|
-
|
|
13
|
+
"private": true,
|
|
14
|
+
"types": "./src/index.d.ts"
|
|
15
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDiagnosticTypes =
|
|
3
|
+
exports.getDiagnosticTypes = getDiagnosticTypes;
|
|
4
4
|
function getDiagnosticTypes() {
|
|
5
5
|
const diagTypeList = [
|
|
6
6
|
{ name: 'Package JSON - dependencies', value: 'dependencies' },
|
|
@@ -12,5 +12,4 @@ function getDiagnosticTypes() {
|
|
|
12
12
|
];
|
|
13
13
|
return diagTypeList;
|
|
14
14
|
}
|
|
15
|
-
exports.getDiagnosticTypes = getDiagnosticTypes;
|
|
16
15
|
//# sourceMappingURL=get-diagnostic-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-diagnostic-types.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-diagnostic-types.ts"],"names":[],"mappings":"
|
|
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,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getFileContents =
|
|
3
|
+
exports.getFileContents = getFileContents;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
function getFileContents(filePath) {
|
|
6
6
|
if (!(0, fs_1.existsSync)(filePath)) {
|
|
@@ -9,5 +9,4 @@ function getFileContents(filePath) {
|
|
|
9
9
|
const diagData = (0, fs_1.readFileSync)(filePath, 'utf8');
|
|
10
10
|
return diagData;
|
|
11
11
|
}
|
|
12
|
-
exports.getFileContents = getFileContents;
|
|
13
12
|
//# sourceMappingURL=get-file-contents.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-file-contents.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-file-contents.ts"],"names":[],"mappings":"
|
|
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,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPackageJsonSection =
|
|
3
|
+
exports.getPackageJsonSection = getPackageJsonSection;
|
|
4
4
|
const get_file_contents_1 = require("./get-file-contents");
|
|
5
5
|
function getPackageJsonSection(section) {
|
|
6
6
|
const filePath = 'package.json';
|
|
@@ -12,5 +12,4 @@ function getPackageJsonSection(section) {
|
|
|
12
12
|
const diagData = JSON.stringify(sectionData, null, 2);
|
|
13
13
|
return diagData;
|
|
14
14
|
}
|
|
15
|
-
exports.getPackageJsonSection = getPackageJsonSection;
|
|
16
15
|
//# sourceMappingURL=get-package-json-section.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-package-json-section.js","sourceRoot":"","sources":["../../../../../../libs/report/diagnostics/src/lib/get-package-json-section.ts"],"names":[],"mappings":"
|
|
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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
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
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lib/ingestion';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/report/ingestion/src/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.reportIngestionCommand = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const prompts_1 = require("./prompts");
|
|
6
|
+
const send_manifest_1 = require("./send-manifest");
|
|
7
|
+
exports.reportIngestionCommand = {
|
|
8
|
+
command: 'generate',
|
|
9
|
+
describe: 'send manifest files information',
|
|
10
|
+
aliases: ['gen', 'g'],
|
|
11
|
+
builder: {
|
|
12
|
+
consent: {
|
|
13
|
+
describe: 'Agree to understanding that sensitive data may be sent to the server',
|
|
14
|
+
required: false,
|
|
15
|
+
default: false,
|
|
16
|
+
boolean: true,
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
handler: run,
|
|
20
|
+
};
|
|
21
|
+
function run(args) {
|
|
22
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const consent = yield (0, prompts_1.askConsent)(args);
|
|
24
|
+
if (!consent) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
// Prompt the user to insert their name
|
|
28
|
+
const clientName = yield (0, prompts_1.promptClientName)();
|
|
29
|
+
// First we need to get a short lived token
|
|
30
|
+
const oid = yield (0, send_manifest_1.getClientToken)(clientName);
|
|
31
|
+
const manifest = yield (0, send_manifest_1.findManifestFile)();
|
|
32
|
+
if (!manifest) {
|
|
33
|
+
console.log('No manifest files found');
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
yield (0, send_manifest_1.sendManifest)(oid, manifest, { clientName });
|
|
37
|
+
console.log('Manifest sent successfully!');
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=ingestion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingestion.js","sourceRoot":"","sources":["../../../../../../libs/report/ingestion/src/lib/ingestion.ts"],"names":[],"mappings":";;;;AACA,uCAAyD;AACzD,mDAAiF;AAGpE,QAAA,sBAAsB,GAAmC;IACpE,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,iCAAiC;IAC3C,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;IACrB,OAAO,EAAE;QACP,OAAO,EAAE;YACP,QAAQ,EAAE,sEAAsE;YAChF,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,IAAI;SACd;KACF;IACD,OAAO,EAAE,GAAG;CACb,CAAC;AAEF,SAAe,GAAG,CAAC,IAAiC;;QAClD,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAU,EAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,uCAAuC;QACvC,MAAM,UAAU,GAAG,MAAM,IAAA,0BAAgB,GAAE,CAAC;QAC5C,2CAA2C;QAC3C,MAAM,GAAG,GAAG,MAAM,IAAA,8BAAc,EAAC,UAAU,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAgB,GAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,MAAM,IAAA,4BAAY,EAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC7C,CAAC;CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ArgumentsCamelCase } from 'yargs';
|
|
2
|
+
import { type Options } from './types';
|
|
3
|
+
export declare function askConsent(args: ArgumentsCamelCase<Options>): Promise<boolean>;
|
|
4
|
+
export declare function promptClientName(): Promise<string>;
|
|
5
|
+
export declare function promptToProceedUploadFile(fileName: string): Promise<boolean>;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.askConsent = askConsent;
|
|
4
|
+
exports.promptClientName = promptClientName;
|
|
5
|
+
exports.promptToProceedUploadFile = promptToProceedUploadFile;
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
const prompts_1 = require("@inquirer/prompts");
|
|
8
|
+
function askConsent(args) {
|
|
9
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
+
const consentPrompt = 'Data may contain sensitive information, please review before sharing it.';
|
|
11
|
+
if (!args.consent) {
|
|
12
|
+
const answer = yield (0, prompts_1.confirm)({
|
|
13
|
+
message: `${consentPrompt} Continue?`,
|
|
14
|
+
});
|
|
15
|
+
if (!answer) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
console.log(consentPrompt);
|
|
21
|
+
}
|
|
22
|
+
return true;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
function promptClientName() {
|
|
26
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const name = yield (0, prompts_1.input)({
|
|
28
|
+
message: "Please enter your company's name:",
|
|
29
|
+
validate: (value) => (value.trim() === '' ? 'Name cannot be empty!' : true),
|
|
30
|
+
});
|
|
31
|
+
return name;
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
function promptToProceedUploadFile(fileName) {
|
|
35
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
36
|
+
const consentPrompt = `Found ${fileName}, this file will be uploaded.`;
|
|
37
|
+
const answer = yield (0, prompts_1.confirm)({
|
|
38
|
+
message: `${consentPrompt} Continue?`,
|
|
39
|
+
});
|
|
40
|
+
if (!answer) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
return true;
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../../../libs/report/ingestion/src/lib/prompts.ts"],"names":[],"mappings":";;AAIA,gCAaC;AAED,4CAMC;AAED,8DASC;;AApCD,+CAAmD;AAInD,SAAsB,UAAU,CAAC,IAAiC;;QAChE,MAAM,aAAa,GAAG,0EAA0E,CAAC;QACjG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAC3B,OAAO,EAAE,GAAG,aAAa,YAAY;aACtC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AAED,SAAsB,gBAAgB;;QACpC,MAAM,IAAI,GAAG,MAAM,IAAA,eAAK,EAAC;YACvB,OAAO,EAAE,mCAAmC;YAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC;SAC5E,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AAED,SAAsB,yBAAyB,CAAC,QAAgB;;QAC9D,MAAM,aAAa,GAAG,SAAS,QAAQ,+BAA+B,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC3B,OAAO,EAAE,GAAG,aAAa,YAAY;SACtC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TELEMETRY_REPORT_MUTATION = exports.TELEMETRY_INITIALIZE_MUTATION = void 0;
|
|
4
|
+
const core_1 = require("@apollo/client/core");
|
|
5
|
+
exports.TELEMETRY_INITIALIZE_MUTATION = (0, core_1.gql) `
|
|
6
|
+
mutation Telemetry($clientName: String!) {
|
|
7
|
+
telemetry {
|
|
8
|
+
initialize(input: { context: { client: { id: $clientName } } }) {
|
|
9
|
+
success
|
|
10
|
+
oid
|
|
11
|
+
message
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
exports.TELEMETRY_REPORT_MUTATION = (0, core_1.gql) `
|
|
17
|
+
mutation Report($key: String!, $report: JSON!, $metadata: JSON) {
|
|
18
|
+
telemetry {
|
|
19
|
+
report(input: { key: $key, report: $report, metadata: $metadata }) {
|
|
20
|
+
txId
|
|
21
|
+
success
|
|
22
|
+
message
|
|
23
|
+
diagnostics
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
`;
|
|
28
|
+
//# sourceMappingURL=queries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../../../../libs/report/ingestion/src/lib/queries.ts"],"names":[],"mappings":";;;AAAA,8CAA0C;AAE7B,QAAA,6BAA6B,GAAG,IAAA,UAAG,EAAA;;;;;;;;;;CAU/C,CAAC;AAEW,QAAA,yBAAyB,GAAG,IAAA,UAAG,EAAA;;;;;;;;;;;CAW3C,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type JSONValue } from './types';
|
|
2
|
+
import 'isomorphic-fetch';
|
|
3
|
+
export declare function initializeTelemetry(clientName: string): Promise<import("@apollo/client/core").FetchResult<any>>;
|
|
4
|
+
export declare function sendTelemetryReport(oid: string, key: string, report: JSONValue, metadata: JSONValue): Promise<import("@apollo/client/core").FetchResult<any>>;
|
|
5
|
+
export declare function getClientToken(clientName: string): Promise<string>;
|
|
6
|
+
export declare function sendManifest(oid: string, manifest: JSONValue, metadata: JSONValue): Promise<void>;
|
|
7
|
+
export declare function findManifestFile(): Promise<{
|
|
8
|
+
name: string;
|
|
9
|
+
data: string;
|
|
10
|
+
} | undefined>;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initializeTelemetry = initializeTelemetry;
|
|
4
|
+
exports.sendTelemetryReport = sendTelemetryReport;
|
|
5
|
+
exports.getClientToken = getClientToken;
|
|
6
|
+
exports.sendManifest = sendManifest;
|
|
7
|
+
exports.findManifestFile = findManifestFile;
|
|
8
|
+
const tslib_1 = require("tslib");
|
|
9
|
+
const core_1 = require("@apollo/client/core");
|
|
10
|
+
const node_fs_1 = require("node:fs");
|
|
11
|
+
const prompts_1 = require("./prompts");
|
|
12
|
+
const queries_1 = require("./queries");
|
|
13
|
+
require("isomorphic-fetch");
|
|
14
|
+
const NES_REPORT_URL = process.env['NES_REPORT_URL'] || 'https://api.nes.herodevs.com/graphql';
|
|
15
|
+
const client = new core_1.ApolloClient({
|
|
16
|
+
cache: new core_1.InMemoryCache(),
|
|
17
|
+
uri: NES_REPORT_URL,
|
|
18
|
+
});
|
|
19
|
+
const MANIFEST_TELEMETRY_KEY = 'ingest:project:report';
|
|
20
|
+
// This is the list of files that we are going to look for
|
|
21
|
+
const MANIFEST_FILES = [{ name: 'package.json' }];
|
|
22
|
+
const MAX_FILE_SIZE = 1024 * 1024; // 1MB
|
|
23
|
+
function getUserAgent() {
|
|
24
|
+
var _a;
|
|
25
|
+
// This env var is set by npm when launching the script
|
|
26
|
+
// https://docs.npmjs.com/cli/v9/using-npm/scripts#packagejson-vars
|
|
27
|
+
return `hdcli/${(_a = process.env['npm_package_version']) !== null && _a !== void 0 ? _a : 'unknown'}`;
|
|
28
|
+
}
|
|
29
|
+
function initializeTelemetry(clientName) {
|
|
30
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
return client.mutate({
|
|
32
|
+
mutation: queries_1.TELEMETRY_INITIALIZE_MUTATION,
|
|
33
|
+
variables: { clientName },
|
|
34
|
+
context: {
|
|
35
|
+
headers: {
|
|
36
|
+
'User-Agent': getUserAgent(),
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function sendTelemetryReport(oid, key, report, metadata) {
|
|
43
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
return client.mutate({
|
|
45
|
+
mutation: queries_1.TELEMETRY_REPORT_MUTATION,
|
|
46
|
+
variables: { key, report, metadata },
|
|
47
|
+
context: {
|
|
48
|
+
headers: {
|
|
49
|
+
'x-nes-telrep': oid,
|
|
50
|
+
'User-Agent': getUserAgent(),
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function getClientToken(clientName) {
|
|
57
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
try {
|
|
59
|
+
const { data } = yield initializeTelemetry(clientName);
|
|
60
|
+
const { success, oid, message } = data.telemetry.initialize;
|
|
61
|
+
if (!success) {
|
|
62
|
+
throw new Error(message);
|
|
63
|
+
}
|
|
64
|
+
return oid;
|
|
65
|
+
}
|
|
66
|
+
catch (error) {
|
|
67
|
+
console.error('Error sending telemetry mutation:', error);
|
|
68
|
+
throw error;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
function sendManifest(oid, manifest, metadata) {
|
|
73
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
try {
|
|
75
|
+
const { data } = yield sendTelemetryReport(oid, MANIFEST_TELEMETRY_KEY, manifest, metadata);
|
|
76
|
+
const { success, message } = data.telemetry.report;
|
|
77
|
+
if (!success) {
|
|
78
|
+
throw new Error(message);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
console.error('Error sending report mutation:', error);
|
|
83
|
+
throw error;
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
function readManifestFile(fileName) {
|
|
88
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
89
|
+
const exists = (0, node_fs_1.existsSync)(fileName);
|
|
90
|
+
if (!exists) {
|
|
91
|
+
console.log(`${fileName} not found`);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const file = (0, node_fs_1.statSync)(fileName);
|
|
95
|
+
// Empty file
|
|
96
|
+
if (file.size === 0) {
|
|
97
|
+
console.warn(`[WARN] Ignoring file ${fileName}, because it is empty`);
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
// Cap the file size to prevent abuse
|
|
101
|
+
if (file.size > MAX_FILE_SIZE) {
|
|
102
|
+
console.warn(`[WARN] Ignoring file ${fileName}, because it is too large`);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
// Ask the user if they want to proceed
|
|
106
|
+
const proceed = yield (0, prompts_1.promptToProceedUploadFile)(fileName);
|
|
107
|
+
if (!proceed) {
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
return (0, node_fs_1.readFileSync)(fileName, 'utf-8');
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
function findManifestFile() {
|
|
114
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
for (const manifest of MANIFEST_FILES) {
|
|
116
|
+
const data = yield readManifestFile(manifest.name);
|
|
117
|
+
if (!data) {
|
|
118
|
+
continue;
|
|
119
|
+
}
|
|
120
|
+
// For now we are only going to send the first file
|
|
121
|
+
return {
|
|
122
|
+
name: manifest.name,
|
|
123
|
+
data,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
return;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=send-manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-manifest.js","sourceRoot":"","sources":["../../../../../../libs/report/ingestion/src/lib/send-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../libs/report/ingestion/src/lib/types.ts"],"names":[],"mappings":""}
|
package/src/lib/cli.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cli =
|
|
3
|
+
exports.cli = cli;
|
|
4
4
|
const yargs = require("yargs");
|
|
5
5
|
const helpers_1 = require("yargs/helpers");
|
|
6
6
|
const get_commands_1 = require("./get-commands");
|
|
@@ -12,11 +12,11 @@ function cli() {
|
|
|
12
12
|
const packageName = pkg.name;
|
|
13
13
|
const packageVersion = pkg.version;
|
|
14
14
|
yargs
|
|
15
|
-
.scriptName(
|
|
15
|
+
.scriptName('hdcli')
|
|
16
16
|
.usage('Usage: $0 <command> [options]')
|
|
17
17
|
.middleware(() => (0, ensure_version_1.ensureVersionIsUpToDate)(packageName, packageVersion))
|
|
18
18
|
.command(commands)
|
|
19
|
+
.showHelpOnFail(false)
|
|
19
20
|
.parse((0, helpers_1.hideBin)(process.argv));
|
|
20
21
|
}
|
|
21
|
-
exports.cli = cli;
|
|
22
22
|
//# sourceMappingURL=cli.js.map
|
package/src/lib/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../../../../apps/cli/src/lib/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../../../../apps/cli/src/lib/cli.ts"],"names":[],"mappings":";;AAKA,kBAeC;AApBD,+BAA+B;AAC/B,2CAAwC;AACxC,iDAA6C;AAC7C,qDAA2D;AAE3D,SAAgB,GAAG;IACjB,MAAM,QAAQ,GAAG,IAAA,0BAAW,GAAE,CAAC;IAE/B,8DAA8D;IAC9D,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC;IAC7B,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;IAEnC,KAAK;SACF,UAAU,CAAC,OAAO,CAAC;SACnB,KAAK,CAAC,+BAA+B,CAAC;SACtC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAA,wCAAuB,EAAC,WAAW,EAAE,cAAc,CAAC,CAAC;SACtE,OAAO,CAAC,QAAQ,CAAC;SACjB,cAAc,CAAC,KAAK,CAAC;SACrB,KAAK,CAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createGroupCommand =
|
|
3
|
+
exports.createGroupCommand = createGroupCommand;
|
|
4
4
|
function createGroupCommand(group, description, subCommand, subCommandDescription, aliases,
|
|
5
5
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
6
6
|
commands, errorMessage) {
|
|
@@ -25,5 +25,4 @@ commands, errorMessage) {
|
|
|
25
25
|
};
|
|
26
26
|
return cmd;
|
|
27
27
|
}
|
|
28
|
-
exports.createGroupCommand = createGroupCommand;
|
|
29
28
|
//# sourceMappingURL=create-group-command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-group-command.js","sourceRoot":"","sources":["../../../../../../../apps/cli/src/lib/create-group-command.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-group-command.js","sourceRoot":"","sources":["../../../../../../../apps/cli/src/lib/create-group-command.ts"],"names":[],"mappings":";;AAEA,gDA8BC;AA9BD,SAAgB,kBAAkB,CAChC,KAAa,EACb,WAAmB,EACnB,UAAkB,EAClB,qBAA6B,EAC7B,OAA0B;AAC1B,8DAA8D;AAC9D,QAAmC,EACnC,YAAoB;IAEpB,MAAM,GAAG,GAAG;QACV,OAAO,EAAE,GAAG,KAAK,KAAK,UAAU,GAAG;QACnC,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,OAAO;QAChB,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,qBAAqB;aAChC;SACF;QACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACjB,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,8DAA8D;QAC9D,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,GAAG,YAAY,KAAK,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;KACe,CAAC;IACnB,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function isVersionUpToDate(packageName: string, packageVersion: string
|
|
1
|
+
export declare function isVersionUpToDate(packageName: string, packageVersion: string): Promise<boolean>;
|
|
2
2
|
export declare function ensureVersionIsUpToDate(packageName: string, packageVersion: string): Promise<void>;
|