@herodevs/cli 0.2.1 → 0.2.2-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.
Files changed (243) hide show
  1. package/README.md +6 -30
  2. package/core-types/README.md +11 -0
  3. package/core-types/package.json +11 -0
  4. package/core-types/src/index.d.ts +1 -0
  5. package/core-types/src/index.js +5 -0
  6. package/core-types/src/index.js.map +1 -0
  7. package/core-types/src/lib/project-type.d.ts +1 -0
  8. package/core-types/src/lib/project-type.js +3 -0
  9. package/core-types/src/lib/project-type.js.map +1 -0
  10. package/init/README.md +11 -0
  11. package/init/package.json +11 -0
  12. package/init/src/index.d.ts +1 -0
  13. package/{dist/shared/command → init/src}/index.js +2 -1
  14. package/init/src/index.js.map +1 -0
  15. package/init/src/lib/configure-project.d.ts +3 -0
  16. package/init/src/lib/configure-project.js +11 -0
  17. package/init/src/lib/configure-project.js.map +1 -0
  18. package/init/src/lib/get-package-choices.d.ts +2 -0
  19. package/init/src/lib/get-package-choices.js +17 -0
  20. package/init/src/lib/get-package-choices.js.map +1 -0
  21. package/init/src/lib/get-product-choices.d.ts +3 -0
  22. package/init/src/lib/get-product-choices.js +19 -0
  23. package/init/src/lib/get-product-choices.js.map +1 -0
  24. package/init/src/lib/get-release-trains.d.ts +3 -0
  25. package/init/src/lib/get-release-trains.js +63 -0
  26. package/init/src/lib/get-release-trains.js.map +1 -0
  27. package/init/src/lib/init.d.ts +5 -0
  28. package/init/src/lib/init.js +56 -0
  29. package/init/src/lib/init.js.map +1 -0
  30. package/init/src/lib/mock-trains.d.ts +2 -0
  31. package/init/src/lib/mock-trains.js +190 -0
  32. package/init/src/lib/mock-trains.js.map +1 -0
  33. package/init/src/lib/models/choice.d.ts +4 -0
  34. package/init/src/lib/models/choice.js +3 -0
  35. package/init/src/lib/models/choice.js.map +1 -0
  36. package/init/src/lib/models/entry.d.ts +6 -0
  37. package/{dist/shared/types/flags.type.js → init/src/lib/models/entry.js} +1 -0
  38. package/init/src/lib/models/entry.js.map +1 -0
  39. package/init/src/lib/models/index.d.ts +5 -0
  40. package/init/src/lib/models/index.js +9 -0
  41. package/init/src/lib/models/index.js.map +1 -0
  42. package/init/src/lib/models/package-version.d.ts +14 -0
  43. package/init/src/lib/models/package-version.js +3 -0
  44. package/init/src/lib/models/package-version.js.map +1 -0
  45. package/init/src/lib/models/product.d.ts +5 -0
  46. package/init/src/lib/models/product.js +3 -0
  47. package/init/src/lib/models/product.js.map +1 -0
  48. package/init/src/lib/models/release-train.d.ts +9 -0
  49. package/init/src/lib/models/release-train.js +3 -0
  50. package/init/src/lib/models/release-train.js.map +1 -0
  51. package/init/src/lib/npm/configure-npm-project.d.ts +2 -0
  52. package/init/src/lib/npm/configure-npm-project.js +60 -0
  53. package/init/src/lib/npm/configure-npm-project.js.map +1 -0
  54. package/init/src/lib/verify-project-type.d.ts +6 -0
  55. package/init/src/lib/verify-project-type.js +20 -0
  56. package/init/src/lib/verify-project-type.js.map +1 -0
  57. package/package.json +12 -110
  58. package/report-committers/README.md +11 -0
  59. package/report-committers/package.json +11 -0
  60. package/report-committers/src/index.d.ts +1 -0
  61. package/{dist/shared/config → report-committers/src}/index.js +2 -1
  62. package/report-committers/src/index.js.map +1 -0
  63. package/report-committers/src/lib/collapse-and-sort-committer-info.d.ts +2 -0
  64. package/report-committers/src/lib/collapse-and-sort-committer-info.js +31 -0
  65. package/report-committers/src/lib/collapse-and-sort-committer-info.js.map +1 -0
  66. package/report-committers/src/lib/committers.d.ts +9 -0
  67. package/report-committers/src/lib/committers.js +102 -0
  68. package/report-committers/src/lib/committers.js.map +1 -0
  69. package/report-committers/src/lib/constants.d.ts +4 -0
  70. package/report-committers/src/lib/constants.js +8 -0
  71. package/report-committers/src/lib/constants.js.map +1 -0
  72. package/report-committers/src/lib/get-committer-counts.d.ts +2 -0
  73. package/report-committers/src/lib/get-committer-counts.js +18 -0
  74. package/report-committers/src/lib/get-committer-counts.js.map +1 -0
  75. package/report-committers/src/lib/parse-date-flags.d.ts +4 -0
  76. package/report-committers/src/lib/parse-date-flags.js +12 -0
  77. package/report-committers/src/lib/parse-date-flags.js.map +1 -0
  78. package/report-committers/src/lib/parse-git-log-entries.d.ts +2 -0
  79. package/report-committers/src/lib/parse-git-log-entries.js +12 -0
  80. package/report-committers/src/lib/parse-git-log-entries.js.map +1 -0
  81. package/report-committers/src/lib/parse-monthly.d.ts +6 -0
  82. package/report-committers/src/lib/parse-monthly.js +41 -0
  83. package/report-committers/src/lib/parse-monthly.js.map +1 -0
  84. package/report-committers/src/lib/print-committers.d.ts +0 -0
  85. package/report-committers/src/lib/print-committers.js +2 -0
  86. package/report-committers/src/lib/print-committers.js.map +1 -0
  87. package/report-committers/src/lib/print-monthly.d.ts +2 -0
  88. package/report-committers/src/lib/print-monthly.js +79 -0
  89. package/report-committers/src/lib/print-monthly.js.map +1 -0
  90. package/report-committers/src/lib/types.d.ts +26 -0
  91. package/report-committers/src/lib/types.js +3 -0
  92. package/report-committers/src/lib/types.js.map +1 -0
  93. package/report-diagnostics/README.md +11 -0
  94. package/report-diagnostics/package.json +11 -0
  95. package/report-diagnostics/src/index.d.ts +1 -0
  96. package/report-diagnostics/src/index.js +5 -0
  97. package/report-diagnostics/src/index.js.map +1 -0
  98. package/report-diagnostics/src/lib/diagnostics.d.ts +7 -0
  99. package/report-diagnostics/src/lib/diagnostics.js +94 -0
  100. package/report-diagnostics/src/lib/diagnostics.js.map +1 -0
  101. package/report-diagnostics/src/lib/get-diagnostic-types.d.ts +4 -0
  102. package/report-diagnostics/src/lib/get-diagnostic-types.js +16 -0
  103. package/report-diagnostics/src/lib/get-diagnostic-types.js.map +1 -0
  104. package/report-diagnostics/src/lib/get-file-contents.d.ts +1 -0
  105. package/report-diagnostics/src/lib/get-file-contents.js +13 -0
  106. package/report-diagnostics/src/lib/get-file-contents.js.map +1 -0
  107. package/report-diagnostics/src/lib/get-package-json-section.d.ts +1 -0
  108. package/report-diagnostics/src/lib/get-package-json-section.js +16 -0
  109. package/report-diagnostics/src/lib/get-package-json-section.js.map +1 -0
  110. package/src/lib/cli.d.ts +1 -0
  111. package/src/lib/cli.js +22 -0
  112. package/src/lib/cli.js.map +1 -0
  113. package/src/lib/create-group-command.d.ts +2 -0
  114. package/src/lib/create-group-command.js +29 -0
  115. package/src/lib/create-group-command.js.map +1 -0
  116. package/src/lib/ensure-version.d.ts +2 -0
  117. package/src/lib/ensure-version.js +52 -0
  118. package/src/lib/ensure-version.js.map +1 -0
  119. package/src/lib/get-commands.d.ts +2 -0
  120. package/src/lib/get-commands.js +18 -0
  121. package/src/lib/get-commands.js.map +1 -0
  122. package/{dist/shared/enums → src/lib}/log-colors.js +1 -0
  123. package/src/lib/log-colors.js.map +1 -0
  124. package/src/main.d.ts +2 -0
  125. package/src/main.js +6 -0
  126. package/src/main.js.map +1 -0
  127. package/tracker-init/README.md +11 -0
  128. package/tracker-init/package.json +11 -0
  129. package/tracker-init/src/index.d.ts +1 -0
  130. package/{dist/shared/enums → tracker-init/src}/index.js +2 -1
  131. package/tracker-init/src/index.js.map +1 -0
  132. package/tracker-init/src/lib/default-config.d.ts +2 -0
  133. package/tracker-init/src/lib/default-config.js +20 -0
  134. package/tracker-init/src/lib/default-config.js.map +1 -0
  135. package/tracker-init/src/lib/init.d.ts +5 -0
  136. package/tracker-init/src/lib/init.js +25 -0
  137. package/tracker-init/src/lib/init.js.map +1 -0
  138. package/tracker-run/README.md +11 -0
  139. package/tracker-run/package.json +11 -0
  140. package/tracker-run/src/index.d.ts +1 -0
  141. package/{dist/shared/types → tracker-run/src}/index.js +2 -1
  142. package/tracker-run/src/index.js.map +1 -0
  143. package/tracker-run/src/lib/get-data-filepath.d.ts +1 -0
  144. package/tracker-run/src/lib/get-data-filepath.js +9 -0
  145. package/tracker-run/src/lib/get-data-filepath.js.map +1 -0
  146. package/tracker-run/src/lib/get-data.d.ts +1 -0
  147. package/tracker-run/src/lib/get-data.js +15 -0
  148. package/tracker-run/src/lib/get-data.js.map +1 -0
  149. package/tracker-run/src/lib/get-git-commit.d.ts +4 -0
  150. package/tracker-run/src/lib/get-git-commit.js +33 -0
  151. package/tracker-run/src/lib/get-git-commit.js.map +1 -0
  152. package/tracker-run/src/lib/process-category.d.ts +2 -0
  153. package/tracker-run/src/lib/process-category.js +152 -0
  154. package/tracker-run/src/lib/process-category.js.map +1 -0
  155. package/tracker-run/src/lib/process-config.d.ts +2 -0
  156. package/tracker-run/src/lib/process-config.js +20 -0
  157. package/tracker-run/src/lib/process-config.js.map +1 -0
  158. package/tracker-run/src/lib/run.d.ts +7 -0
  159. package/tracker-run/src/lib/run.js +29 -0
  160. package/tracker-run/src/lib/run.js.map +1 -0
  161. package/tracker-run/src/lib/save-results.d.ts +2 -0
  162. package/tracker-run/src/lib/save-results.js +20 -0
  163. package/tracker-run/src/lib/save-results.js.map +1 -0
  164. package/tracker-shared/README.md +11 -0
  165. package/tracker-shared/package.json +11 -0
  166. package/tracker-shared/src/index.d.ts +2 -0
  167. package/tracker-shared/src/index.js +14 -0
  168. package/tracker-shared/src/index.js.map +1 -0
  169. package/tracker-shared/src/lib/models/aggregate-result.d.ts +4 -0
  170. package/tracker-shared/src/lib/models/aggregate-result.js +3 -0
  171. package/tracker-shared/src/lib/models/aggregate-result.js.map +1 -0
  172. package/tracker-shared/src/lib/models/category-result.d.ts +7 -0
  173. package/tracker-shared/src/lib/models/category-result.js +3 -0
  174. package/tracker-shared/src/lib/models/category-result.js.map +1 -0
  175. package/tracker-shared/src/lib/models/category.d.ts +9 -0
  176. package/tracker-shared/src/lib/models/category.js +3 -0
  177. package/tracker-shared/src/lib/models/category.js.map +1 -0
  178. package/tracker-shared/src/lib/models/config.d.ts +8 -0
  179. package/tracker-shared/src/lib/models/config.js +3 -0
  180. package/tracker-shared/src/lib/models/config.js.map +1 -0
  181. package/tracker-shared/src/lib/models/file-result.d.ts +5 -0
  182. package/tracker-shared/src/lib/models/file-result.js +3 -0
  183. package/tracker-shared/src/lib/models/file-result.js.map +1 -0
  184. package/tracker-shared/src/lib/models/index.d.ts +8 -0
  185. package/tracker-shared/src/lib/models/index.js +12 -0
  186. package/tracker-shared/src/lib/models/index.js.map +1 -0
  187. package/tracker-shared/src/lib/models/process-result.d.ts +6 -0
  188. package/tracker-shared/src/lib/models/process-result.js +3 -0
  189. package/tracker-shared/src/lib/models/process-result.js.map +1 -0
  190. package/tracker-shared/src/lib/models/result.d.ts +11 -0
  191. package/tracker-shared/src/lib/models/result.js +3 -0
  192. package/tracker-shared/src/lib/models/result.js.map +1 -0
  193. package/tracker-shared/src/lib/models/total-result.d.ts +4 -0
  194. package/tracker-shared/src/lib/models/total-result.js +3 -0
  195. package/tracker-shared/src/lib/models/total-result.js.map +1 -0
  196. package/tracker-shared/src/lib/read-config.d.ts +2 -0
  197. package/tracker-shared/src/lib/read-config.js +14 -0
  198. package/tracker-shared/src/lib/read-config.js.map +1 -0
  199. package/utility/README.md +11 -0
  200. package/utility/package.json +11 -0
  201. package/utility/src/index.d.ts +4 -0
  202. package/utility/src/index.js +8 -0
  203. package/utility/src/index.js.map +1 -0
  204. package/utility/src/lib/get-project-types.d.ts +2 -0
  205. package/utility/src/lib/get-project-types.js +14 -0
  206. package/utility/src/lib/get-project-types.js.map +1 -0
  207. package/utility/src/lib/get-root-dir.d.ts +1 -0
  208. package/utility/src/lib/get-root-dir.js +13 -0
  209. package/utility/src/lib/get-root-dir.js.map +1 -0
  210. package/utility/src/lib/run-command.d.ts +1 -0
  211. package/utility/src/lib/run-command.js +32 -0
  212. package/utility/src/lib/run-command.js.map +1 -0
  213. package/utility/src/lib/sort-by-name.d.ts +3 -0
  214. package/utility/src/lib/sort-by-name.js +8 -0
  215. package/utility/src/lib/sort-by-name.js.map +1 -0
  216. package/bin/dev +0 -17
  217. package/bin/dev.cmd +0 -3
  218. package/bin/run +0 -5
  219. package/bin/run.cmd +0 -3
  220. package/dist/commands/report/committers.d.ts +0 -19
  221. package/dist/commands/report/committers.js +0 -190
  222. package/dist/index.d.ts +0 -1
  223. package/dist/index.js +0 -5
  224. package/dist/package.json +0 -117
  225. package/dist/shared/command/base-command.d.ts +0 -22
  226. package/dist/shared/command/base-command.js +0 -47
  227. package/dist/shared/command/index.d.ts +0 -1
  228. package/dist/shared/config/environment.d.ts +0 -4
  229. package/dist/shared/config/environment.js +0 -10
  230. package/dist/shared/config/index.d.ts +0 -1
  231. package/dist/shared/enums/index.d.ts +0 -1
  232. package/dist/shared/index.d.ts +0 -4
  233. package/dist/shared/index.js +0 -7
  234. package/dist/shared/lib/index.d.ts +0 -2
  235. package/dist/shared/lib/index.js +0 -5
  236. package/dist/shared/lib/shell.d.ts +0 -7
  237. package/dist/shared/lib/shell.js +0 -34
  238. package/dist/shared/lib/version-update.d.ts +0 -3
  239. package/dist/shared/lib/version-update.js +0 -52
  240. package/dist/shared/types/flags.type.d.ts +0 -4
  241. package/dist/shared/types/index.d.ts +0 -1
  242. package/oclif.manifest.json +0 -75
  243. /package/{dist/shared/enums → src/lib}/log-colors.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product.js","sourceRoot":"","sources":["../../../../../../../libs/nes/init/src/lib/models/product.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { Entry } from './entry';
2
+ import { Product } from './product';
3
+ export interface ReleaseTrain {
4
+ id?: number;
5
+ key: string;
6
+ name: string;
7
+ products: Product[];
8
+ entries: Entry[];
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=release-train.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-train.js","sourceRoot":"","sources":["../../../../../../../libs/nes/init/src/lib/models/release-train.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { Entry } from '../models';
2
+ export declare function configureNpmProject(accessToken: string, packages: Entry[]): void;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.configureNpmProject = void 0;
4
+ const fs_1 = require("fs");
5
+ const path = require("path");
6
+ function configureNpmProject(accessToken, packages) {
7
+ updatePackageJson(packages);
8
+ updateNpmrc(accessToken);
9
+ }
10
+ exports.configureNpmProject = configureNpmProject;
11
+ function updatePackageJson(packages) {
12
+ const packageJsonPath = path.join(process.cwd(), 'package.json');
13
+ const packageJsonContents = (0, fs_1.readFileSync)(packageJsonPath, 'utf8');
14
+ const packageJson = JSON.parse(packageJsonContents);
15
+ const pkgUpdates = packages
16
+ .map((p) => {
17
+ var _a;
18
+ return ({
19
+ key: ((_a = p.packageVersion.origination) === null || _a === void 0 ? void 0 : _a.name) || p.packageVersion.name,
20
+ value: p.packageVersion.fqns,
21
+ });
22
+ })
23
+ .reduce((acc, cur) => {
24
+ var _a, _b;
25
+ // Update the appropriate section of the package.json (dependencies if not dev or peer)
26
+ if ((_a = packageJson.devDependencies) === null || _a === void 0 ? void 0 : _a[cur.key]) {
27
+ acc.devDeps[cur.key] = `npm:${cur.value}`;
28
+ }
29
+ else if ((_b = packageJson.peerDependencies) === null || _b === void 0 ? void 0 : _b[cur.key]) {
30
+ acc.peerDeps[cur.key] = `npm:${cur.value}`;
31
+ }
32
+ else {
33
+ acc.deps[cur.key] = `npm:${cur.value}`;
34
+ }
35
+ acc.overrides[cur.key] = { '.': `npm:${cur.value}` };
36
+ return acc;
37
+ }, { deps: {}, devDeps: {}, peerDeps: {}, overrides: {} });
38
+ packageJson.dependencies = Object.assign(Object.assign({}, (packageJson.dependencies || {})), pkgUpdates.deps);
39
+ packageJson.devDependencies = Object.assign(Object.assign({}, (packageJson.devDependencies || {})), pkgUpdates.devDeps);
40
+ packageJson.peerDependencies = Object.assign(Object.assign({}, (packageJson.peerDependencies || {})), pkgUpdates.peerDeps);
41
+ packageJson.overrides = Object.assign(Object.assign({}, (packageJson.overrides || {})), pkgUpdates.overrides);
42
+ (0, fs_1.writeFileSync)(packageJsonPath, JSON.stringify(packageJson, null, 2));
43
+ }
44
+ function updateNpmrc(accessToken) {
45
+ const npmrcPath = path.join(process.cwd(), '.npmrc');
46
+ let npmrcContents = '';
47
+ if ((0, fs_1.existsSync)(npmrcPath)) {
48
+ npmrcContents = (0, fs_1.readFileSync)(npmrcPath, 'utf8');
49
+ }
50
+ if (npmrcContents.includes(`@neverendingsupport:registry`)) {
51
+ return;
52
+ }
53
+ const updatedContents = npmrcContents +
54
+ `\n\n` +
55
+ `@neverendingsupport:registry=https://registry.nes.herodevs.com/npm/pkg/` +
56
+ `\n` +
57
+ `//registry.nes.herodevs.com/npm/pkg/:_authToken="${accessToken}"`;
58
+ (0, fs_1.writeFileSync)(npmrcPath, updatedContents);
59
+ }
60
+ //# sourceMappingURL=configure-npm-project.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configure-npm-project.js","sourceRoot":"","sources":["../../../../../../../libs/nes/init/src/lib/npm/configure-npm-project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ProjectType } from "../../../core-types/src";
2
+ export declare function verifyProjectType(): {
3
+ types: ProjectType[];
4
+ valid: boolean;
5
+ error?: string;
6
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyProjectType = void 0;
4
+ const utility_1 = require("../../../utility/src");
5
+ function verifyProjectType() {
6
+ const types = (0, utility_1.getProjectTypes)();
7
+ let valid = true;
8
+ let error = undefined;
9
+ if (types.length === 0) {
10
+ valid = false;
11
+ error = 'Unable to recognize a supported project type.';
12
+ }
13
+ return {
14
+ types: types,
15
+ valid,
16
+ error,
17
+ };
18
+ }
19
+ exports.verifyProjectType = verifyProjectType;
20
+ //# sourceMappingURL=verify-project-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-project-type.js","sourceRoot":"","sources":["../../../../../../libs/nes/init/src/lib/verify-project-type.ts"],"names":[],"mappings":";;;AACA,+CAAoD;AAEpD,SAAgB,iBAAiB;IAK/B,MAAM,KAAK,GAAG,IAAA,yBAAe,GAAE,CAAC;IAChC,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,KAAK,GAAuB,SAAS,CAAC;IAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,GAAG,KAAK,CAAC;QACd,KAAK,GAAG,+CAA+C,CAAC;IAC1D,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,KAAK;QACL,KAAK;KACN,CAAC;AACJ,CAAC;AAlBD,8CAkBC"}
package/package.json CHANGED
@@ -1,117 +1,19 @@
1
1
  {
2
2
  "name": "@herodevs/cli",
3
- "version": "0.2.1",
4
- "description": "HeroDevs CLI",
5
- "author": "@herodevs",
6
- "bin": {
7
- "@herodevs/cli": "./bin/run",
8
- "hd": "./bin/run"
9
- },
10
- "homepage": "https://github.com/herodevs/cli",
11
- "license": "MIT",
12
- "main": "dist/index.js",
13
- "repository": "herodevs/cli",
14
- "files": [
15
- "/bin",
16
- "/dist",
17
- "/npm-shrinkwrap.json",
18
- "/oclif.manifest.json",
19
- "package.json"
20
- ],
3
+ "version": "0.2.2-beta.1",
4
+ "bin": "./src/main.js",
21
5
  "dependencies": {
22
- "@oclif/core": "^2",
23
- "@oclif/plugin-help": "^5",
24
- "@oclif/plugin-plugins": "^3.2.0",
25
- "date-fns": "^2.30.0",
6
+ "tslib": "^2.3.0",
7
+ "yargs": "^17.7.2",
26
8
  "get-json": "^1.0.1",
9
+ "date-fns": "^3.6.0",
10
+ "@inquirer/prompts": "^5.0.2",
27
11
  "git-last-commit": "^1.0.1",
28
- "module-alias": "^2.2.3",
29
- "shelljs": "^0.8.5",
30
- "sloc": "^0.3.2"
31
- },
32
- "devDependencies": {
33
- "@oclif/test": "^2.4.4",
34
- "@types/chai": "^4",
35
- "@types/mocha": "^9.0.0",
36
- "@types/node": "^16.18.40",
37
- "chai": "^4",
38
- "eslint": "^7.32.0",
39
- "eslint-config-oclif": "^4",
40
- "eslint-config-oclif-typescript": "^1.0.3",
41
- "mocha": "^9",
42
- "oclif": "^3.11.3",
43
- "shx": "^0.3.3",
44
- "ts-node": "^10.9.1",
45
- "tslib": "^2.6.1",
46
- "typescript": "^4.9.5"
47
- },
48
- "oclif": {
49
- "bin": "@herodevs/cli",
50
- "dirname": "@herodevs/cli",
51
- "commands": "./dist/commands",
52
- "plugins": [
53
- "@oclif/plugin-help"
54
- ],
55
- "topicSeparator": " ",
56
- "topics": {
57
- "report": {
58
- "description": "Run reports for the current project (commands: committers)"
59
- }
60
- }
61
- },
62
- "scripts": {
63
- "generate:command": "oclif generate command",
64
- "start": "npm run dev",
65
- "predev": "npm run build",
66
- "dev": "./bin/dev",
67
- "preprod": "npm run build",
68
- "prod": "./bin/run",
69
- "build": "shx rm -rf dist && tsc -b && shx cp package.json dist/package.json",
70
- "lint": "eslint . --ext .ts --config .eslintrc",
71
- "postpack": "shx rm -f oclif.manifest.json",
72
- "posttestXXX": "npm run lint",
73
- "prepack": "npm run build && oclif manifest && oclif readme",
74
- "test": "mocha --forbid-only \"test/**/*.test.ts\"",
75
- "version": "oclif readme && git add README.md",
76
- "amendCommit": "git add . -A && git commit --amend --no-edit",
77
- "version:branch": "npm version prerelease --preid $(git rev-parse --short=8 HEAD^) --no-git-tag",
78
- "prepublish:branch": "npm run version:branch",
79
- "publish:branch": "npm publish --tag $(git rev-parse --short=8 HEAD^) --access public",
80
- "postpublish:branch": "npm run amendCommit",
81
- "version:beta": "npm version prerelease --preid beta --no-git-tag",
82
- "prepublish:beta": "npm run version:beta",
83
- "publish:beta": "npm publish --tag beta --access public",
84
- "postpublish:beta": "npm run amendCommit",
85
- "version:major": "npm version major --no-git-tag",
86
- "prepublish:major": "npm run version:major",
87
- "publish:major": "npm publish --access public",
88
- "postpublish:major": "npm run amendCommit",
89
- "version:minor": "npm version minor --no-git-tag",
90
- "prepublish:minor": "npm run version:minor",
91
- "publish:minor": "npm publish --access public",
92
- "postpublish:minor": "npm run amendCommit",
93
- "version:patch": "npm version patch --no-git-tag",
94
- "prepublish:patch": "npm run version:patch",
95
- "publish:patch": "npm publish --access public",
96
- "postpublish:patch": "npm run amendCommit",
97
- "buildAndPublishBranch": "npm run build && npm run publish:branch",
98
- "buildAndPublishBeta": "npm run build && npm run publish:beta && npm dist-tag add @herodevs/cli@$(node -e \"console.log(require('./package.json').version)\") latest",
99
- "buildAndPublishMajor": "npm run build && npm run publish:major",
100
- "buildAndPublishMinor": "npm run build && npm run publish:minor",
101
- "buildAndPublishPatch": "npm run build && npm run publish:patch"
102
- },
103
- "engines": {
104
- "node": ">=12.0.0"
12
+ "sloc": "^0.3.2",
13
+ "@apollo/client": "^3.10.1",
14
+ "ora": "5.3.0"
105
15
  },
106
- "bugs": "https://github.com/herodevs/cli/issues",
107
- "keywords": [
108
- "oclif"
109
- ],
110
- "types": "dist/index.d.ts",
111
- "prettier": {
112
- "singleQuote": true,
113
- "trailingComma": "es5",
114
- "bracketSpacing": true,
115
- "printWidth": 100
116
- }
16
+ "type": "commonjs",
17
+ "main": "./src/main.js",
18
+ "typings": "./src/main.d.ts"
117
19
  }
@@ -0,0 +1,11 @@
1
+ # committers
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Building
6
+
7
+ Run `nx build committers` to build the library.
8
+
9
+ ## Running unit tests
10
+
11
+ Run `nx test committers` to execute the unit tests via [Jest](https://jestjs.io).
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "@herodevs/report-committers",
3
+ "version": "0.0.1",
4
+ "dependencies": {
5
+ "tslib": "^2.3.0"
6
+ },
7
+ "type": "commonjs",
8
+ "main": "./src/index.js",
9
+ "typings": "./src/index.d.ts",
10
+ "private": true
11
+ }
@@ -0,0 +1 @@
1
+ export * from './lib/committers';
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./environment"), exports);
4
+ tslib_1.__exportStar(require("./lib/committers"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/report/committers/src/index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC"}
@@ -0,0 +1,2 @@
1
+ import { SortedCommitterInfo } from './types';
2
+ export declare function collapseAndSortCommitterInfo(startDate: Date, endDate: Date, rawEntries: string[]): SortedCommitterInfo;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collapseAndSortCommitterInfo = void 0;
4
+ function collapseAndSortCommitterInfo(startDate, endDate, rawEntries) {
5
+ return undefined;
6
+ /*
7
+ const entries = parseGitLogEntries(rawEntries);
8
+ const committerHash = {} as any;
9
+ for (let i = 0; i < entries.length; i++) {
10
+ committerHash[entries[i].committer] =
11
+ committerHash[entries[i].committer] || [];
12
+ committerHash[entries[i].committer].push(
13
+ [entries[i].commitHash, entries[i].date].join(' ')
14
+ );
15
+ }
16
+
17
+ const sortable = [] as { name: string; commits: string[] }[];
18
+ Object.keys(committerHash).forEach((name) => {
19
+ sortable.push({ name, commits: committerHash[name] });
20
+ });
21
+
22
+ const committers = sortable.sort((a, b) => {
23
+ return b.commits.length - a.commits.length;
24
+ });
25
+
26
+ const monthly = parseMonthly(startDate, endDate, entries);
27
+ return { committers, monthly };
28
+ */
29
+ }
30
+ exports.collapseAndSortCommitterInfo = collapseAndSortCommitterInfo;
31
+ //# sourceMappingURL=collapse-and-sort-committer-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collapse-and-sort-committer-info.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/collapse-and-sort-committer-info.ts"],"names":[],"mappings":";;;AAIA,SAAgB,4BAA4B,CAC1C,SAAe,EACf,OAAa,EACb,UAAoB;IAEpB,OAAO,SAAgB,CAAC;IACxB;;;;;;;;;;;;;;;;;;;;;;MAsBE;AACJ,CAAC;AA7BD,oEA6BC"}
@@ -0,0 +1,9 @@
1
+ import { CommandModule } from 'yargs';
2
+ interface Options {
3
+ startDate: string;
4
+ endDate: string;
5
+ exclude: string[];
6
+ json: boolean;
7
+ }
8
+ export declare const reportCommittersCommand: CommandModule<object, Options>;
9
+ export {};
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.reportCommittersCommand = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const date_fns_1 = require("date-fns");
6
+ const utility_1 = require("../../../utility/src");
7
+ const parse_date_flags_1 = require("./parse-date-flags");
8
+ const constants_1 = require("./constants");
9
+ const parse_git_log_entries_1 = require("./parse-git-log-entries");
10
+ const get_committer_counts_1 = require("./get-committer-counts");
11
+ exports.reportCommittersCommand = {
12
+ command: 'committers',
13
+ describe: 'show git committers',
14
+ aliases: [],
15
+ builder: {
16
+ startDate: {
17
+ alias: 's',
18
+ default: (0, date_fns_1.format)(new Date(), constants_1.dateFormat),
19
+ describe: `Start Date (format: ${constants_1.dateFormat})`,
20
+ string: true,
21
+ },
22
+ endDate: {
23
+ alias: 'e',
24
+ describe: `End Date (format: ${constants_1.dateFormat})`,
25
+ required: false,
26
+ default: (0, date_fns_1.format)((0, date_fns_1.subMonths)(new Date(), constants_1.monthsToSubtract), constants_1.dateFormat),
27
+ },
28
+ exclude: {
29
+ alias: 'x',
30
+ array: true,
31
+ describe: 'Path Exclusions (eg -x="./src/bin" -x="./dist")',
32
+ required: false,
33
+ },
34
+ json: {
35
+ describe: 'Output to JSON format',
36
+ required: false,
37
+ default: false,
38
+ boolean: true,
39
+ },
40
+ // monthly: {
41
+ // alias: 'm',
42
+ // describe:
43
+ // 'Break down by calendar month, rather than by committer. (eg -m)',
44
+ // required: false,
45
+ // default: false,
46
+ // },
47
+ },
48
+ handler: run,
49
+ };
50
+ function run(args) {
51
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
52
+ const { startDate, endDate } = (0, parse_date_flags_1.parseDateFlags)(constants_1.dateFormat, args.startDate, args.endDate);
53
+ const ignores = args.exclude && args.exclude.length ? `-- . "!(${args.exclude.join('|')})"` : '';
54
+ const gitCommand = `git log --since "${endDate}" --until "${startDate}" --pretty=format:${constants_1.gitOutputFormat} ${ignores}`;
55
+ const result = yield (0, utility_1.runCommand)(gitCommand);
56
+ const rawEntries = result.split('\n');
57
+ // const { committers, monthly } = collapseAndSortCommitterInfo(startDate, endDate, rawEntries);
58
+ // if( args.monthly ){
59
+ // printMonthly(monthly);
60
+ // return;
61
+ // }else{
62
+ // printCommitters(committers);
63
+ // return;
64
+ // }
65
+ if (rawEntries.length === 1 && rawEntries[0] === '') {
66
+ const startDateStr = (0, date_fns_1.format)(startDate, 'yyyy-MM-dd');
67
+ const endDateStr = (0, date_fns_1.format)(endDate, 'yyyy-MM-dd');
68
+ console.log(`No commits found between ${endDateStr} and ${startDateStr}`);
69
+ return;
70
+ }
71
+ const entries = (0, parse_git_log_entries_1.parseGitLogEntries)(rawEntries);
72
+ const committerCounts = (0, get_committer_counts_1.getCommitterCounts)(entries);
73
+ if (args.json) {
74
+ outputCommittersJson(committerCounts);
75
+ }
76
+ else {
77
+ outputCommitters(committerCounts);
78
+ }
79
+ });
80
+ }
81
+ function outputCommitters(committerCounts) {
82
+ const longestNameLength = committerCounts.reduce((acc, c) => {
83
+ return c.name.length > acc ? c.name.length : acc;
84
+ }, 'Committer'.length);
85
+ const header = `Committer${' '.repeat(longestNameLength - 9)} | Commits`;
86
+ console.log(header);
87
+ console.log(header
88
+ .split('')
89
+ .map((c) => (c === '|' ? '|' : '-'))
90
+ .join(''));
91
+ console.log(committerCounts
92
+ .map((c) => {
93
+ const committer = `${c.name}${' '.repeat(longestNameLength - c.name.length)}`;
94
+ const count = ' '.repeat(7 - c.count.toString().length) + c.count;
95
+ return `${committer} | ${count}`;
96
+ })
97
+ .join('\n'));
98
+ }
99
+ function outputCommittersJson(committerCounts) {
100
+ console.log(JSON.stringify(committerCounts, null, 2));
101
+ }
102
+ //# sourceMappingURL=committers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"committers.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/committers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const dateFormat = "yyyy-MM-dd";
2
+ export declare const gammaDelimiter = "\u0393\u0393\u0393\u0393";
3
+ export declare const monthsToSubtract = 12;
4
+ export declare const gitOutputFormat: string;
@@ -0,0 +1,8 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,2 @@
1
+ import { Commit, CommitterCount } from './types';
2
+ export declare function getCommitterCounts(entries: Commit[]): CommitterCount[];
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCommitterCounts = void 0;
4
+ function getCommitterCounts(entries) {
5
+ return entries
6
+ .reduce((acc, entry) => {
7
+ let committerCount = acc.find((c) => c.name === entry.committer);
8
+ if (!committerCount) {
9
+ committerCount = { name: entry.committer, count: 0 };
10
+ acc.push(committerCount);
11
+ }
12
+ committerCount.count++;
13
+ return acc;
14
+ }, [])
15
+ .sort((a, b) => b.count - a.count);
16
+ }
17
+ exports.getCommitterCounts = getCommitterCounts;
18
+ //# sourceMappingURL=get-committer-counts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-committer-counts.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/get-committer-counts.ts"],"names":[],"mappings":";;;AAEA,SAAgB,kBAAkB,CAAC,OAAiB;IAClD,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACrB,IAAI,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,cAAc,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC3B,CAAC;QACD,cAAc,CAAC,KAAK,EAAE,CAAC;QACvB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAsB,CAAC;SACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAZD,gDAYC"}
@@ -0,0 +1,4 @@
1
+ export declare function parseDateFlags(dateFormat: string, startDate: string, endDate: string): {
2
+ endDate: Date;
3
+ startDate: Date;
4
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseDateFlags = void 0;
4
+ const date_fns_1 = require("date-fns");
5
+ function parseDateFlags(dateFormat, startDate, endDate) {
6
+ return {
7
+ endDate: (0, date_fns_1.parse)(endDate, dateFormat, new Date()),
8
+ startDate: (0, date_fns_1.parse)(startDate, dateFormat, new Date()),
9
+ };
10
+ }
11
+ exports.parseDateFlags = parseDateFlags;
12
+ //# sourceMappingURL=parse-date-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-date-flags.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-date-flags.ts"],"names":[],"mappings":";;;AAAA,uCAAiC;AAEjC,SAAgB,cAAc,CAC5B,UAAkB,EAClB,SAAiB,EACjB,OAAe;IAEf,OAAO;QACL,OAAO,EAAE,IAAA,gBAAK,EAAC,OAAO,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;QAC/C,SAAS,EAAE,IAAA,gBAAK,EAAC,SAAS,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC;AATD,wCASC"}
@@ -0,0 +1,2 @@
1
+ import { Commit } from './types';
2
+ export declare function parseGitLogEntries(entries: string[]): Commit[];
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseGitLogEntries = void 0;
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
+ exports.parseGitLogEntries = parseGitLogEntries;
12
+ //# sourceMappingURL=parse-git-log-entries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-git-log-entries.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-git-log-entries.ts"],"names":[],"mappings":";;;AAAA,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;AALD,gDAKC"}
@@ -0,0 +1,6 @@
1
+ import { MonthlyData } from './types';
2
+ export declare function parseMonthly(startDate: Date, endDate: Date, entries: {
3
+ commitHash: string;
4
+ committer: string;
5
+ date: string;
6
+ }[]): MonthlyData[];
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseMonthly = void 0;
4
+ const date_fns_1 = require("date-fns");
5
+ function parseMonthly(startDate, endDate, entries) {
6
+ const monthly = [];
7
+ const dates = [startDate, endDate];
8
+ const ival = {
9
+ start: (0, date_fns_1.min)(dates),
10
+ end: (0, date_fns_1.max)(dates),
11
+ };
12
+ const range = (0, date_fns_1.eachMonthOfInterval)(ival);
13
+ for (const idxr in range) {
14
+ const idx = parseInt(idxr);
15
+ if (idx + 1 >= range.length) {
16
+ continue;
17
+ }
18
+ const [start, end] = [range[idx], range[idx + 1]];
19
+ const month = {
20
+ name: (0, date_fns_1.format)(start, 'LLLL yyyy'),
21
+ start,
22
+ end,
23
+ committers: {},
24
+ };
25
+ for (const rec of entries) {
26
+ if ((0, date_fns_1.isWithinInterval)(new Date(rec.date), { start, end })) {
27
+ month.committers[rec.committer] = month.committers[rec.committer] || [];
28
+ month.committers[rec.committer].push({
29
+ hash: rec.commitHash,
30
+ date: rec.date,
31
+ });
32
+ }
33
+ }
34
+ if (Object.keys(month.committers).length > 0) {
35
+ monthly.push(month);
36
+ }
37
+ }
38
+ return monthly;
39
+ }
40
+ exports.parseMonthly = parseMonthly;
41
+ //# sourceMappingURL=parse-monthly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-monthly.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/parse-monthly.ts"],"names":[],"mappings":";;;AAAA,uCAMkB;AAGlB,SAAgB,YAAY,CAC1B,SAAe,EACf,OAAa,EACb,OAAkE;IAElE,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG;QACX,KAAK,EAAE,IAAA,cAAG,EAAC,KAAK,CAAC;QACjB,GAAG,EAAE,IAAA,cAAG,EAAC,KAAK,CAAC;KAChB,CAAC;IACF,MAAM,KAAK,GAAG,IAAA,8BAAmB,EAAC,IAAI,CAAC,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,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,IAAI,EAAE,IAAA,iBAAM,EAAC,KAAK,EAAE,WAAW,CAAC;YAChC,KAAK;YACL,GAAG;YACH,UAAU,EAAE,EAAE;SACf,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,IAAA,2BAAgB,EAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;gBACzD,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBACxE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;oBACnC,IAAI,EAAE,GAAG,CAAC,UAAU;oBACpB,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAC,CAAC;YACL,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;AAxCD,oCAwCC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=print-committers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"print-committers.js","sourceRoot":"","sources":["../../../../../../libs/report/committers/src/lib/print-committers.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { MonthlyData } from './types';
2
+ export declare function printMonthly(monthlyData: MonthlyData[]): void;