@clickview/ship-it 0.0.33 → 0.0.35-dev.0

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 (108) hide show
  1. package/Dockerfile +33 -33
  2. package/README.md +48 -48
  3. package/config.json +19 -19
  4. package/lib/config.json +20 -20
  5. package/lib/src/api-clients/git-lab/GitLabApiClient.js +439 -439
  6. package/lib/src/api-clients/git-lab/GitLabMapper.js +82 -82
  7. package/lib/src/api-clients/index.js +20 -20
  8. package/lib/src/api-clients/slack/SlackApiClient.js +206 -206
  9. package/lib/src/api-clients/team-city/TeamCityApiClient.js +100 -100
  10. package/lib/src/api-clients/trello/TrelloApiClient.js +145 -145
  11. package/lib/src/commands/BumpPackagesCommand.js +84 -84
  12. package/lib/src/commands/CreateBranchCommand.js +100 -100
  13. package/lib/src/commands/CreateMergeRequestCommand.js +107 -107
  14. package/lib/src/commands/CreateNotesAuditCommand.js +84 -84
  15. package/lib/src/commands/CreateReleaseNotesCommand.js +95 -95
  16. package/lib/src/commands/CreateTrelloCardsCommand.js +77 -77
  17. package/lib/src/commands/InstallPackagesCommand.js +76 -76
  18. package/lib/src/commands/ListProjectsCommand.js +76 -76
  19. package/lib/src/commands/ReleaseCommand.js +129 -129
  20. package/lib/src/commands/StartProjectBuildsCommand.js +76 -76
  21. package/lib/src/commands/StatusCommand.js +88 -88
  22. package/lib/src/commands/TagMasterCommand.js +76 -76
  23. package/lib/src/commands/ValidateMergeRequestCommand.js +76 -76
  24. package/lib/src/commands/VersionCommand.js +76 -76
  25. package/lib/src/commands/index.js +30 -30
  26. package/lib/src/constants/CommandTypeMapping.js +20 -20
  27. package/lib/src/constants/GitLabMemberIds.js +6 -6
  28. package/lib/src/constants/MonorepoPackageJsonFiles.js +17 -17
  29. package/lib/src/constants/MonorepoProjectNames.js +16 -16
  30. package/lib/src/constants/ProjectNames.js +68 -68
  31. package/lib/src/constants/SlackUserEmailList.js +13 -13
  32. package/lib/src/constants/TeamCityBuildIDs.js +45 -45
  33. package/lib/src/constants/index.js +19 -19
  34. package/lib/src/errors/ShipItError.js +32 -32
  35. package/lib/src/errors/index.js +17 -17
  36. package/lib/src/index.js +18 -18
  37. package/lib/src/interfaces/Config.js +2 -2
  38. package/lib/src/interfaces/MergeRequestState.js +2 -2
  39. package/lib/src/interfaces/ProjectNames.js +2 -2
  40. package/lib/src/interfaces/ShipItCommand.js +2 -2
  41. package/lib/src/interfaces/ShipItTask.js +2 -2
  42. package/lib/src/interfaces/VersionType.js +2 -2
  43. package/lib/src/interfaces/command-cli-options/MilestoneCommandCliOptions.js +2 -2
  44. package/lib/src/interfaces/command-cli-options/ReleaseCommandCliOptions.js +2 -2
  45. package/lib/src/interfaces/command-cli-options/StatusCommandCliOptions.js +2 -2
  46. package/lib/src/interfaces/command-cli-options/index.js +19 -19
  47. package/lib/src/interfaces/command-options/BaseCommandOptions.js +2 -2
  48. package/lib/src/interfaces/command-options/BumpPackagesCommandOptions.js +2 -2
  49. package/lib/src/interfaces/command-options/DockerMilestoneCommandOptions.js +2 -2
  50. package/lib/src/interfaces/command-options/MilestoneCommandOptions.js +2 -2
  51. package/lib/src/interfaces/command-options/ReleaseCommandOptions.js +2 -2
  52. package/lib/src/interfaces/command-options/StatusCommandOptions.js +2 -2
  53. package/lib/src/interfaces/command-options/ValidateMRCommandOptions.js +2 -2
  54. package/lib/src/interfaces/command-options/index.js +22 -22
  55. package/lib/src/interfaces/index.js +26 -26
  56. package/lib/src/interfaces/models/Branch.js +2 -2
  57. package/lib/src/interfaces/models/Commit.js +2 -2
  58. package/lib/src/interfaces/models/CommitFile.js +2 -2
  59. package/lib/src/interfaces/models/File.js +2 -2
  60. package/lib/src/interfaces/models/Label.js +2 -2
  61. package/lib/src/interfaces/models/MergeRequest.js +2 -2
  62. package/lib/src/interfaces/models/Milestone.js +2 -2
  63. package/lib/src/interfaces/models/Project.js +2 -2
  64. package/lib/src/interfaces/models/ProjectConfig.js +9 -9
  65. package/lib/src/interfaces/models/Release.js +2 -2
  66. package/lib/src/interfaces/models/Tag.js +2 -2
  67. package/lib/src/interfaces/models/index.js +26 -26
  68. package/lib/src/interfaces/view-models/MilestoneProject.js +2 -2
  69. package/lib/src/interfaces/view-models/index.js +17 -17
  70. package/lib/src/inversify.config.js +75 -75
  71. package/lib/src/services/GitLabService.js +510 -508
  72. package/lib/src/services/SlackService.js +142 -142
  73. package/lib/src/services/TeamCityService.js +37 -37
  74. package/lib/src/services/TrelloService.js +84 -84
  75. package/lib/src/services/index.js +20 -20
  76. package/lib/src/startup/AddMilestoneCommand.js +96 -96
  77. package/lib/src/startup/GetAction.js +68 -68
  78. package/lib/src/startup/SetupCommands.js +168 -168
  79. package/lib/src/tasks/BumpPackagesTask.js +229 -229
  80. package/lib/src/tasks/BumpVersionTxtTask.js +110 -110
  81. package/lib/src/tasks/CommitPackageVersionsTask.js +116 -116
  82. package/lib/src/tasks/CreateBranchTask.js +104 -104
  83. package/lib/src/tasks/CreateMergeRequestTask.js +118 -118
  84. package/lib/src/tasks/CreateNotesAuditTask.js +140 -140
  85. package/lib/src/tasks/CreateReleaseNotesTask.js +144 -144
  86. package/lib/src/tasks/InstallPackagesTask.js +407 -407
  87. package/lib/src/tasks/ListProjectsTask.js +87 -87
  88. package/lib/src/tasks/PopulateTrelloBoardTask.js +140 -140
  89. package/lib/src/tasks/StartMonorepoBuildTask.js +109 -109
  90. package/lib/src/tasks/StartProjectBuildsTask.js +170 -170
  91. package/lib/src/tasks/TagMasterTask.js +186 -186
  92. package/lib/src/tasks/ValidateCommitsTask.js +143 -143
  93. package/lib/src/tasks/ValidateDescriptionsTask.js +178 -178
  94. package/lib/src/tasks/ValidateMergeRequestTask.js +115 -115
  95. package/lib/src/tasks/ValidateTask.js +419 -419
  96. package/lib/src/tasks/VersionTask.js +98 -98
  97. package/lib/src/tasks/index.js +34 -34
  98. package/lib/src/types.js +57 -57
  99. package/lib/src/utils/BranchNames.js +11 -11
  100. package/lib/src/utils/Commits.js +55 -55
  101. package/lib/src/utils/Csv.js +54 -54
  102. package/lib/src/utils/Descriptions.js +274 -274
  103. package/lib/src/utils/GroupIds.js +6 -6
  104. package/lib/src/utils/Logger.js +62 -62
  105. package/lib/src/utils/ProjectIds.js +47 -47
  106. package/lib/src/utils/Versions.js +20 -20
  107. package/lib/src/utils/index.js +22 -22
  108. package/package.json +50 -50
@@ -1,62 +1,62 @@
1
- "use strict";
2
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
- if (ar || !(i in from)) {
5
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
- ar[i] = from[i];
7
- }
8
- }
9
- return to.concat(ar || Array.prototype.slice.call(from));
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.Logger = void 0;
16
- require("reflect-metadata");
17
- var chalk_1 = __importDefault(require("chalk"));
18
- exports.Logger = {
19
- logSuccess: function (message) {
20
- var optionalParams = [];
21
- for (var _i = 1; _i < arguments.length; _i++) {
22
- optionalParams[_i - 1] = arguments[_i];
23
- }
24
- console.log(chalk_1.default.green.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
25
- },
26
- logInfo: function (message) {
27
- var optionalParams = [];
28
- for (var _i = 1; _i < arguments.length; _i++) {
29
- optionalParams[_i - 1] = arguments[_i];
30
- }
31
- console.log(chalk_1.default.grey.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
32
- },
33
- logMessage: function (message) {
34
- var optionalParams = [];
35
- for (var _i = 1; _i < arguments.length; _i++) {
36
- optionalParams[_i - 1] = arguments[_i];
37
- }
38
- console.log(chalk_1.default.white.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
39
- },
40
- logWarning: function (message) {
41
- var optionalParams = [];
42
- for (var _i = 1; _i < arguments.length; _i++) {
43
- optionalParams[_i - 1] = arguments[_i];
44
- }
45
- console.log(chalk_1.default.yellow.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
46
- },
47
- logError: function (message) {
48
- var optionalParams = [];
49
- for (var _i = 1; _i < arguments.length; _i++) {
50
- optionalParams[_i - 1] = arguments[_i];
51
- }
52
- console.log(chalk_1.default.red.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
53
- },
54
- logJson: function (json) {
55
- console.log(json);
56
- },
57
- logTask: function (title) {
58
- exports.Logger.logInfo('\n-------------------------------------');
59
- exports.Logger.logInfo(title);
60
- exports.Logger.logInfo('-------------------------------------\n');
61
- }
62
- };
1
+ "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.Logger = void 0;
16
+ require("reflect-metadata");
17
+ var chalk_1 = __importDefault(require("chalk"));
18
+ exports.Logger = {
19
+ logSuccess: function (message) {
20
+ var optionalParams = [];
21
+ for (var _i = 1; _i < arguments.length; _i++) {
22
+ optionalParams[_i - 1] = arguments[_i];
23
+ }
24
+ console.log(chalk_1.default.green.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
25
+ },
26
+ logInfo: function (message) {
27
+ var optionalParams = [];
28
+ for (var _i = 1; _i < arguments.length; _i++) {
29
+ optionalParams[_i - 1] = arguments[_i];
30
+ }
31
+ console.log(chalk_1.default.grey.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
32
+ },
33
+ logMessage: function (message) {
34
+ var optionalParams = [];
35
+ for (var _i = 1; _i < arguments.length; _i++) {
36
+ optionalParams[_i - 1] = arguments[_i];
37
+ }
38
+ console.log(chalk_1.default.white.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
39
+ },
40
+ logWarning: function (message) {
41
+ var optionalParams = [];
42
+ for (var _i = 1; _i < arguments.length; _i++) {
43
+ optionalParams[_i - 1] = arguments[_i];
44
+ }
45
+ console.log(chalk_1.default.yellow.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
46
+ },
47
+ logError: function (message) {
48
+ var optionalParams = [];
49
+ for (var _i = 1; _i < arguments.length; _i++) {
50
+ optionalParams[_i - 1] = arguments[_i];
51
+ }
52
+ console.log(chalk_1.default.red.apply(chalk_1.default, __spreadArray([message], optionalParams, false)));
53
+ },
54
+ logJson: function (json) {
55
+ console.log(json);
56
+ },
57
+ logTask: function (title) {
58
+ exports.Logger.logInfo('\n-------------------------------------');
59
+ exports.Logger.logInfo(title);
60
+ exports.Logger.logInfo('-------------------------------------\n');
61
+ }
62
+ };
@@ -1,47 +1,47 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ProjectIds = void 0;
4
- var lodash_1 = require("lodash");
5
- var constants_1 = require("../constants");
6
- var errors_1 = require("../errors");
7
- exports.ProjectIds = {
8
- MONOREPO_PROJECT_ID: constants_1.PROJECT_NAMES.frontend.monorepo,
9
- /**
10
- * This allows project names to be passed into the CLI.
11
- * For example `ship-it release -m S2 -p lite`
12
- */
13
- getProjectIds: function (projects) {
14
- var projectIds = [];
15
- for (var _i = 0, projects_1 = projects; _i < projects_1.length; _i++) {
16
- var project = projects_1[_i];
17
- if (!isNaN(+project)) {
18
- projectIds.push(project);
19
- continue;
20
- }
21
- var mappedId = getMappedId(project);
22
- if (!mappedId)
23
- throw new errors_1.ShipItError("Could not find project id mapping for ".concat(project));
24
- projectIds.push(mappedId);
25
- }
26
- return (0, lodash_1.uniq)(projectIds);
27
- }
28
- };
29
- function getMappedId(project) {
30
- for (var projectGroup in constants_1.PROJECT_NAMES) {
31
- var projectGroupIds = constants_1.PROJECT_NAMES[projectGroup];
32
- if (projectGroupIds[project])
33
- return projectGroupIds[project];
34
- // Support arguments such as "emailapi"
35
- if (projectGroupIds[project.replace('api', '')])
36
- return projectGroupIds[project.replace('api', '')];
37
- // Support arguments such as "emailservice"
38
- if (projectGroupIds[project.replace('service', '')])
39
- return projectGroupIds[project.replace('service', '')];
40
- // Support arguments such as "launchweb"
41
- if (projectGroupIds[project.replace('web', '')])
42
- return projectGroupIds[project.replace('web', '')];
43
- // Support arguments such as "hydrationapp"
44
- if (projectGroupIds[project.replace('app', '')])
45
- return projectGroupIds[project.replace('app', '')];
46
- }
47
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProjectIds = void 0;
4
+ var lodash_1 = require("lodash");
5
+ var constants_1 = require("../constants");
6
+ var errors_1 = require("../errors");
7
+ exports.ProjectIds = {
8
+ MONOREPO_PROJECT_ID: constants_1.PROJECT_NAMES.frontend.monorepo,
9
+ /**
10
+ * This allows project names to be passed into the CLI.
11
+ * For example `ship-it release -m S2 -p lite`
12
+ */
13
+ getProjectIds: function (projects) {
14
+ var projectIds = [];
15
+ for (var _i = 0, projects_1 = projects; _i < projects_1.length; _i++) {
16
+ var project = projects_1[_i];
17
+ if (!isNaN(+project)) {
18
+ projectIds.push(project);
19
+ continue;
20
+ }
21
+ var mappedId = getMappedId(project);
22
+ if (!mappedId)
23
+ throw new errors_1.ShipItError("Could not find project id mapping for ".concat(project));
24
+ projectIds.push(mappedId);
25
+ }
26
+ return (0, lodash_1.uniq)(projectIds);
27
+ }
28
+ };
29
+ function getMappedId(project) {
30
+ for (var projectGroup in constants_1.PROJECT_NAMES) {
31
+ var projectGroupIds = constants_1.PROJECT_NAMES[projectGroup];
32
+ if (projectGroupIds[project])
33
+ return projectGroupIds[project];
34
+ // Support arguments such as "emailapi"
35
+ if (projectGroupIds[project.replace('api', '')])
36
+ return projectGroupIds[project.replace('api', '')];
37
+ // Support arguments such as "emailservice"
38
+ if (projectGroupIds[project.replace('service', '')])
39
+ return projectGroupIds[project.replace('service', '')];
40
+ // Support arguments such as "launchweb"
41
+ if (projectGroupIds[project.replace('web', '')])
42
+ return projectGroupIds[project.replace('web', '')];
43
+ // Support arguments such as "hydrationapp"
44
+ if (projectGroupIds[project.replace('app', '')])
45
+ return projectGroupIds[project.replace('app', '')];
46
+ }
47
+ }
@@ -1,20 +1,20 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Versions = void 0;
7
- var semver_1 = __importDefault(require("semver"));
8
- exports.Versions = {
9
- getNextVersion: function (currentVersion, type) {
10
- var curr = new semver_1.default.SemVer(currentVersion);
11
- switch (type) {
12
- case 'major':
13
- return "".concat(curr.major + 1, ".0.0");
14
- case 'minor':
15
- return "".concat(curr.major, ".").concat(curr.minor + 1, ".0");
16
- case 'patch':
17
- return "".concat(curr.major, ".").concat(curr.minor, ".").concat(curr.patch + 1);
18
- }
19
- }
20
- };
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Versions = void 0;
7
+ var semver_1 = __importDefault(require("semver"));
8
+ exports.Versions = {
9
+ getNextVersion: function (currentVersion, type) {
10
+ var curr = new semver_1.default.SemVer(currentVersion);
11
+ switch (type) {
12
+ case 'major':
13
+ return "".concat(curr.major + 1, ".0.0");
14
+ case 'minor':
15
+ return "".concat(curr.major, ".").concat(curr.minor + 1, ".0");
16
+ case 'patch':
17
+ return "".concat(curr.major, ".").concat(curr.minor, ".").concat(curr.patch + 1);
18
+ }
19
+ }
20
+ };
@@ -1,22 +1,22 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./BranchNames"), exports);
18
- __exportStar(require("./Commits"), exports);
19
- __exportStar(require("./Descriptions"), exports);
20
- __exportStar(require("./Logger"), exports);
21
- __exportStar(require("./ProjectIds"), exports);
22
- __exportStar(require("./Versions"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./BranchNames"), exports);
18
+ __exportStar(require("./Commits"), exports);
19
+ __exportStar(require("./Descriptions"), exports);
20
+ __exportStar(require("./Logger"), exports);
21
+ __exportStar(require("./ProjectIds"), exports);
22
+ __exportStar(require("./Versions"), exports);
package/package.json CHANGED
@@ -1,50 +1,50 @@
1
- {
2
- "name": "@clickview/ship-it",
3
- "version": "0.0.33",
4
- "description": "Release Manager",
5
- "main": "./lib/index.js",
6
- "bin": {
7
- "ship-it": "./lib/src/index.js"
8
- },
9
- "scripts": {
10
- "start": "npm run lint && ts-node --files src/index.ts",
11
- "build": "npm run lint && tsc -p . && tsc-alias -p tsconfig.json",
12
- "lint": "eslint . --ext .ts"
13
- },
14
- "repository": {
15
- "type": "git",
16
- "url": "https://gitlab.cvinternal.net/front-end/ship-it.git"
17
- },
18
- "author": "Joshua Taylor, Shale Kuzmanovski",
19
- "license": "ISC",
20
- "dependencies": {
21
- "@gitbeaker/node": "35.6.0",
22
- "@slack/webhook": "7.0.2",
23
- "@slack/web-api":"6.11.2",
24
- "chalk": "4.1.2",
25
- "commander": "9.1.0",
26
- "fast-csv": "4.3.6",
27
- "fs-extra": "10.0.1",
28
- "inversify": "6.0.1",
29
- "lodash": "4.17.21",
30
- "reflect-metadata": "0.1.13",
31
- "semver": "7.3.5",
32
- "teamcity-rest-api": "0.0.8",
33
- "trello": "0.11.0"
34
- },
35
- "devDependencies": {
36
- "@clickview/eslint-config": "1.0.3",
37
- "@types/fs-extra": "9.0.13",
38
- "@types/lodash": "4.14.181",
39
- "@types/node": "17.0.23",
40
- "@types/semver": "7.3.9",
41
- "@typescript-eslint/eslint-plugin": "5.17.0",
42
- "@typescript-eslint/parser": "5.17.0",
43
- "eslint": "8.12.0",
44
- "eslint-plugin-react-hooks": "4.4.0",
45
- "ts-node": "10.7.0",
46
- "tsc-alias": "1.6.6",
47
- "tsconfig-paths": "3.14.1",
48
- "typescript": "4.6.3"
49
- }
50
- }
1
+ {
2
+ "name": "@clickview/ship-it",
3
+ "version": "0.0.35-dev.0",
4
+ "description": "Release Manager",
5
+ "main": "./lib/index.js",
6
+ "bin": {
7
+ "ship-it": "./lib/src/index.js"
8
+ },
9
+ "scripts": {
10
+ "start": "npm run lint && ts-node --files src/index.ts",
11
+ "build": "npm run lint && tsc -p . && tsc-alias -p tsconfig.json",
12
+ "lint": "eslint . --ext .ts"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "https://gitlab.cvinternal.net/front-end/ship-it.git"
17
+ },
18
+ "author": "Joshua Taylor, Shale Kuzmanovski",
19
+ "license": "ISC",
20
+ "dependencies": {
21
+ "@gitbeaker/node": "35.6.0",
22
+ "@slack/webhook": "7.0.2",
23
+ "@slack/web-api":"6.11.2",
24
+ "chalk": "4.1.2",
25
+ "commander": "9.1.0",
26
+ "fast-csv": "4.3.6",
27
+ "fs-extra": "10.0.1",
28
+ "inversify": "6.0.1",
29
+ "lodash": "4.17.21",
30
+ "reflect-metadata": "0.1.13",
31
+ "semver": "7.3.5",
32
+ "teamcity-rest-api": "0.0.8",
33
+ "trello": "0.11.0"
34
+ },
35
+ "devDependencies": {
36
+ "@clickview/eslint-config": "1.0.3",
37
+ "@types/fs-extra": "9.0.13",
38
+ "@types/lodash": "4.14.181",
39
+ "@types/node": "17.0.23",
40
+ "@types/semver": "7.3.9",
41
+ "@typescript-eslint/eslint-plugin": "5.17.0",
42
+ "@typescript-eslint/parser": "5.17.0",
43
+ "eslint": "8.12.0",
44
+ "eslint-plugin-react-hooks": "4.4.0",
45
+ "ts-node": "10.7.0",
46
+ "tsc-alias": "1.6.6",
47
+ "tsconfig-paths": "3.14.1",
48
+ "typescript": "4.6.3"
49
+ }
50
+ }