npm-update-package 3.0.22 → 4.0.0-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 (178) hide show
  1. package/dist/app.js +3 -0
  2. package/dist/bin/npm-update-package.js +16 -0
  3. package/dist/core/FailedResult.js +1 -0
  4. package/dist/core/OutdatedPackage.js +1 -0
  5. package/dist/{src/core → core}/OutdatedPackagesProcessor.js +3 -7
  6. package/dist/{src/core → core}/PackageUpdater.js +1 -5
  7. package/dist/core/SucceededResult.js +1 -0
  8. package/dist/file/canReadWrite.js +11 -0
  9. package/dist/file/readFile.js +4 -0
  10. package/dist/{src/git → git}/CommitMessageCreator.js +3 -7
  11. package/dist/{src/git → git}/Git.js +1 -5
  12. package/dist/{src/git → git}/GitConfigInitializer.js +1 -5
  13. package/dist/{src/git → git}/GitRepository.js +5 -12
  14. package/dist/{src/git → git}/GitTransaction.js +4 -8
  15. package/dist/git/createBranchName.js +5 -0
  16. package/dist/{src/github → github}/GitHub.js +4 -8
  17. package/dist/{src/github → github}/branch/finder/BranchFinder.js +1 -5
  18. package/dist/github/createGitHub.js +9 -0
  19. package/dist/github/createOctokit.js +22 -0
  20. package/dist/github/errors/NotFoundError.js +5 -0
  21. package/dist/{src/github → github}/label/creator/LabelCreator.js +7 -11
  22. package/dist/{src/github → github}/pull-request/closer/PullRequestCloser.js +1 -5
  23. package/dist/github/pull-request/closer/PullRequestsCloser.js +13 -0
  24. package/dist/{src/github → github}/pull-request/creator/AssigneesAdder.js +3 -7
  25. package/dist/{src/github → github}/pull-request/creator/GitHubUrlOptimizer.js +3 -7
  26. package/dist/{src/github → github}/pull-request/creator/LabelsAdder.js +1 -5
  27. package/dist/{src/github → github}/pull-request/creator/PackageDiffsSectionCreator.js +1 -5
  28. package/dist/{src/github → github}/pull-request/creator/PullRequestBodyCreator.js +15 -18
  29. package/dist/{src/github → github}/pull-request/creator/PullRequestCreator.js +5 -9
  30. package/dist/{src/github → github}/pull-request/creator/PullRequestTitleCreator.js +3 -7
  31. package/dist/{src/github → github}/pull-request/creator/ReleaseNotesSectionCreator.js +1 -5
  32. package/dist/{src/github → github}/pull-request/creator/ReviewersAdder.js +3 -7
  33. package/dist/github/pull-request/creator/createFooter.js +4 -0
  34. package/dist/github/pull-request/creator/createMetadataSection.js +21 -0
  35. package/dist/github/pull-request/creator/createNotesSection.js +5 -0
  36. package/dist/{src/github → github}/pull-request/creator/createOutdatedPackagesTable.js +1 -5
  37. package/dist/github/pull-request/finder/PullRequestFinder.js +23 -0
  38. package/dist/github/pull-request/finder/isPullRequestByNpmUpdatePackage.js +3 -0
  39. package/dist/github/pull-request/metadata/PullRequestMetadata.js +12 -0
  40. package/dist/github/pull-request/metadata/createPullRequestMetadata.js +12 -0
  41. package/dist/{src/github → github}/pull-request/metadata/extractPullRequestMetadata.js +3 -7
  42. package/dist/github/releases/Release.js +1 -0
  43. package/dist/{src/github → github}/releases/fetcher/ReleasesFetcher.js +9 -16
  44. package/dist/json/toJSON.js +4 -0
  45. package/dist/logger/LogLevel.js +12 -0
  46. package/dist/logger/logger.js +2 -0
  47. package/dist/main.js +175 -0
  48. package/dist/npm-check-updates/Dependency.js +10 -0
  49. package/dist/{src/npm-check-updates → npm-check-updates}/NpmCheckUpdates.js +32 -34
  50. package/dist/npm-check-updates/NpmCheckUpdatesResult.js +3 -0
  51. package/dist/npm-check-updates/createDepOptionValue.js +7 -0
  52. package/dist/npm-check-updates/toDependency.js +17 -0
  53. package/dist/options/CLIOption.js +1 -0
  54. package/dist/options/OptionType.js +9 -0
  55. package/dist/options/Options.js +53 -0
  56. package/dist/{src/options → options}/cliOptions.js +50 -53
  57. package/dist/options/createOptions.js +16 -0
  58. package/dist/options/initOptions.js +5 -0
  59. package/dist/options/parseBooleanOption.js +11 -0
  60. package/dist/options/parseNumberOption.js +8 -0
  61. package/dist/options/toCommanderOption.js +37 -0
  62. package/dist/outdated-package-processor/OutdatedPackageProcessor.js +1 -0
  63. package/dist/{src/outdated-package-processor → outdated-package-processor}/OutdatedPackageProcessorCreator.js +11 -15
  64. package/dist/outdated-package-processor/OutdatedPullRequestStrategy.js +8 -0
  65. package/dist/{src/outdated-package-processor → outdated-package-processor}/create/Create.js +17 -20
  66. package/dist/{src/outdated-package-processor → outdated-package-processor}/recreate/Recreate.js +18 -21
  67. package/dist/{src/outdated-package-processor → outdated-package-processor}/skip/Skip.js +20 -23
  68. package/dist/package-json/DependencyType.js +10 -0
  69. package/dist/package-json/PackageMetadata.js +18 -0
  70. package/dist/package-json/PackageMetadataDependencies.js +3 -0
  71. package/dist/package-json/PackageMetadataRepository.js +5 -0
  72. package/dist/package-json/extractRepository.js +9 -0
  73. package/dist/package-json/parsePackageJson.js +10 -0
  74. package/dist/package-json/readPackageJson.js +7 -0
  75. package/dist/package-manager/PackageManager.js +1 -0
  76. package/dist/package-manager/PackageManagerCreator.js +30 -0
  77. package/dist/package-manager/PackageManagerName.js +7 -0
  78. package/dist/package-manager/detectPackageManager.js +11 -0
  79. package/dist/{src/package-manager → package-manager}/npm/Npm.js +3 -7
  80. package/dist/package-manager/npm/NpmVersions.js +3 -0
  81. package/dist/{src/package-manager → package-manager}/yarn/Yarn.js +3 -7
  82. package/dist/package-manager/yarn/YarnVersions.js +6 -0
  83. package/dist/{src/semver → semver}/SemVer.js +3 -7
  84. package/dist/semver/SemVerLevel.js +8 -0
  85. package/dist/semver/compareSemVers.js +12 -0
  86. package/dist/terminal/Terminal.js +7 -0
  87. package/dist/util/range.js +5 -0
  88. package/dist/util/sampleSize.js +4 -0
  89. package/dist/util/sleep.js +3 -0
  90. package/package.json +7 -4
  91. package/dist/package.json +0 -72
  92. package/dist/src/bin/npm-update-package.js +0 -22
  93. package/dist/src/core/FailedResult.js +0 -2
  94. package/dist/src/core/OutdatedPackage.js +0 -2
  95. package/dist/src/core/SucceededResult.js +0 -2
  96. package/dist/src/core/index.js +0 -21
  97. package/dist/src/file/canReadWrite.js +0 -18
  98. package/dist/src/file/index.js +0 -18
  99. package/dist/src/file/readFile.js +0 -11
  100. package/dist/src/git/createBranchName.js +0 -9
  101. package/dist/src/git/index.js +0 -22
  102. package/dist/src/github/branch/finder/index.js +0 -17
  103. package/dist/src/github/branch/index.js +0 -17
  104. package/dist/src/github/createGitHub.js +0 -13
  105. package/dist/src/github/createOctokit.js +0 -29
  106. package/dist/src/github/errors/NotFoundError.js +0 -9
  107. package/dist/src/github/errors/index.js +0 -17
  108. package/dist/src/github/index.js +0 -22
  109. package/dist/src/github/label/creator/index.js +0 -17
  110. package/dist/src/github/label/index.js +0 -17
  111. package/dist/src/github/pull-request/closer/PullRequestsCloser.js +0 -17
  112. package/dist/src/github/pull-request/closer/index.js +0 -18
  113. package/dist/src/github/pull-request/creator/createFooter.js +0 -11
  114. package/dist/src/github/pull-request/creator/createMetadataSection.js +0 -25
  115. package/dist/src/github/pull-request/creator/createNotesSection.js +0 -9
  116. package/dist/src/github/pull-request/creator/index.js +0 -25
  117. package/dist/src/github/pull-request/finder/PullRequestFinder.js +0 -27
  118. package/dist/src/github/pull-request/finder/index.js +0 -17
  119. package/dist/src/github/pull-request/finder/isPullRequestByNpmUpdatePackage.js +0 -7
  120. package/dist/src/github/pull-request/index.js +0 -19
  121. package/dist/src/github/pull-request/metadata/PullRequestMetadata.js +0 -15
  122. package/dist/src/github/pull-request/metadata/createPullRequestMetadata.js +0 -19
  123. package/dist/src/github/pull-request/metadata/index.js +0 -19
  124. package/dist/src/github/releases/Release.js +0 -2
  125. package/dist/src/github/releases/fetcher/index.js +0 -17
  126. package/dist/src/github/releases/index.js +0 -18
  127. package/dist/src/json/index.js +0 -17
  128. package/dist/src/json/toJSON.js +0 -8
  129. package/dist/src/logger/LogLevel.js +0 -16
  130. package/dist/src/logger/index.js +0 -18
  131. package/dist/src/logger/logger.js +0 -5
  132. package/dist/src/main.js +0 -160
  133. package/dist/src/npm-check-updates/Dependency.js +0 -14
  134. package/dist/src/npm-check-updates/NpmCheckUpdatesResult.js +0 -6
  135. package/dist/src/npm-check-updates/createDepOptionValue.js +0 -11
  136. package/dist/src/npm-check-updates/index.js +0 -17
  137. package/dist/src/npm-check-updates/toDependency.js +0 -21
  138. package/dist/src/options/CLIOption.js +0 -2
  139. package/dist/src/options/OptionType.js +0 -13
  140. package/dist/src/options/Options.js +0 -56
  141. package/dist/src/options/createOptions.js +0 -23
  142. package/dist/src/options/index.js +0 -18
  143. package/dist/src/options/initOptions.js +0 -9
  144. package/dist/src/options/parseBooleanOption.js +0 -15
  145. package/dist/src/options/parseNumberOption.js +0 -12
  146. package/dist/src/options/toCommanderOption.js +0 -41
  147. package/dist/src/outdated-package-processor/OutdatedPackageProcessor.js +0 -2
  148. package/dist/src/outdated-package-processor/OutdatedPullRequestStrategy.js +0 -12
  149. package/dist/src/outdated-package-processor/create/index.js +0 -17
  150. package/dist/src/outdated-package-processor/index.js +0 -19
  151. package/dist/src/outdated-package-processor/recreate/index.js +0 -17
  152. package/dist/src/outdated-package-processor/skip/index.js +0 -17
  153. package/dist/src/package-json/DependencyType.js +0 -14
  154. package/dist/src/package-json/PackageMetadata.js +0 -21
  155. package/dist/src/package-json/PackageMetadataDependencies.js +0 -6
  156. package/dist/src/package-json/PackageMetadataRepository.js +0 -8
  157. package/dist/src/package-json/extractRepository.js +0 -13
  158. package/dist/src/package-json/index.js +0 -21
  159. package/dist/src/package-json/parsePackageJson.js +0 -14
  160. package/dist/src/package-json/readPackageJson.js +0 -11
  161. package/dist/src/package-manager/PackageManager.js +0 -2
  162. package/dist/src/package-manager/PackageManagerCreator.js +0 -34
  163. package/dist/src/package-manager/PackageManagerName.js +0 -11
  164. package/dist/src/package-manager/detectPackageManager.js +0 -15
  165. package/dist/src/package-manager/index.js +0 -21
  166. package/dist/src/package-manager/npm/NpmVersions.js +0 -6
  167. package/dist/src/package-manager/npm/index.js +0 -17
  168. package/dist/src/package-manager/yarn/YarnVersions.js +0 -9
  169. package/dist/src/package-manager/yarn/index.js +0 -17
  170. package/dist/src/semver/SemVerLevel.js +0 -12
  171. package/dist/src/semver/compareSemVers.js +0 -16
  172. package/dist/src/semver/index.js +0 -19
  173. package/dist/src/terminal/Terminal.js +0 -14
  174. package/dist/src/terminal/index.js +0 -17
  175. package/dist/src/util/index.js +0 -19
  176. package/dist/src/util/range.js +0 -9
  177. package/dist/src/util/sampleSize.js +0 -11
  178. package/dist/src/util/sleep.js +0 -7
package/dist/app.js ADDED
@@ -0,0 +1,3 @@
1
+ export const name = 'npm-update-package';
2
+ export const version = '4.0.0-1';
3
+ export const homepage = 'https://github.com/npm-update-package/npm-update-package';
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ import * as app from '../app.js';
3
+ import { logger } from '../logger/logger.js';
4
+ import { main } from '../main.js';
5
+ import { initOptions } from '../options/initOptions.js';
6
+ try {
7
+ const options = initOptions();
8
+ logger.level = options.logLevel;
9
+ logger.info(`Start ${app.name} v${app.version}`);
10
+ await main(options);
11
+ logger.info(`End ${app.name} v${app.version}`);
12
+ }
13
+ catch (error) {
14
+ logger.fatal(error);
15
+ throw error;
16
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OutdatedPackagesProcessor = void 0;
4
- const logger_1 = require("../logger");
5
- class OutdatedPackagesProcessor {
1
+ import { logger } from '../logger/logger.js';
2
+ export class OutdatedPackagesProcessor {
6
3
  outdatedPackageProcessor;
7
4
  constructor(outdatedPackageProcessor) {
8
5
  this.outdatedPackageProcessor = outdatedPackageProcessor;
@@ -10,11 +7,10 @@ class OutdatedPackagesProcessor {
10
7
  async process(outdatedPackages) {
11
8
  const results = [];
12
9
  for (const outdatedPackage of outdatedPackages) {
13
- logger_1.logger.debug(`outdatedPackage=${JSON.stringify(outdatedPackage)}`);
10
+ logger.debug(`outdatedPackage=${JSON.stringify(outdatedPackage)}`);
14
11
  const result = await this.outdatedPackageProcessor.process(outdatedPackage);
15
12
  results.push(result);
16
13
  }
17
14
  return results;
18
15
  }
19
16
  }
20
- exports.OutdatedPackagesProcessor = OutdatedPackagesProcessor;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PackageUpdater = void 0;
4
- class PackageUpdater {
1
+ export class PackageUpdater {
5
2
  packageManager;
6
3
  ncu;
7
4
  constructor({ packageManager, ncu }) {
@@ -16,4 +13,3 @@ class PackageUpdater {
16
13
  await this.packageManager.install();
17
14
  }
18
15
  }
19
- exports.PackageUpdater = PackageUpdater;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import fs from 'node:fs';
2
+ // TODO: Add test
3
+ export const canReadWrite = async (path) => {
4
+ try {
5
+ await fs.promises.access(path, fs.constants.R_OK | fs.constants.W_OK);
6
+ }
7
+ catch {
8
+ return false;
9
+ }
10
+ return true;
11
+ };
@@ -0,0 +1,4 @@
1
+ import fs from 'node:fs';
2
+ export const readFile = async (path) => {
3
+ return await fs.promises.readFile(path, 'utf8');
4
+ };
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CommitMessageCreator = void 0;
4
- const mustache_1 = require("mustache");
5
- class CommitMessageCreator {
1
+ import mustache from 'mustache';
2
+ export class CommitMessageCreator {
6
3
  template;
7
4
  constructor(template) {
8
5
  this.template = template;
@@ -13,7 +10,7 @@ class CommitMessageCreator {
13
10
  const newVersion = outdatedPackage.newVersion.version;
14
11
  const level = outdatedPackage.level;
15
12
  const dependencyType = outdatedPackage.dependencyType;
16
- return (0, mustache_1.render)(this.template, {
13
+ return mustache.render(this.template, {
17
14
  packageName,
18
15
  currentVersion,
19
16
  newVersion,
@@ -22,4 +19,3 @@ class CommitMessageCreator {
22
19
  });
23
20
  }
24
21
  }
25
- exports.CommitMessageCreator = CommitMessageCreator;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Git = void 0;
4
- class Git {
1
+ export class Git {
5
2
  terminal;
6
3
  constructor(terminal) {
7
4
  this.terminal = terminal;
@@ -35,4 +32,3 @@ class Git {
35
32
  await this.terminal.run('git', 'checkout', branchName);
36
33
  }
37
34
  }
38
- exports.Git = Git;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GitConfigInitializer = void 0;
4
- class GitConfigInitializer {
1
+ export class GitConfigInitializer {
5
2
  options;
6
3
  git;
7
4
  constructor({ options, git }) {
@@ -17,4 +14,3 @@ class GitConfigInitializer {
17
14
  }
18
15
  }
19
16
  }
20
- exports.GitConfigInitializer = GitConfigInitializer;
@@ -1,13 +1,7 @@
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.GitRepository = void 0;
7
- const node_url_1 = require("node:url");
8
- const parse_github_url_1 = __importDefault(require("parse-github-url"));
1
+ import { URL } from 'node:url';
2
+ import gh from 'parse-github-url';
9
3
  const HOST_GITHUB = 'github.com';
10
- class GitRepository {
4
+ export class GitRepository {
11
5
  url;
12
6
  owner;
13
7
  name;
@@ -35,7 +29,7 @@ class GitRepository {
35
29
  * - `git@<host>:<owner>/<repo>.git`
36
30
  */
37
31
  static of(repository) {
38
- const result = (0, parse_github_url_1.default)(repository);
32
+ const result = gh(repository);
39
33
  if (result === null) {
40
34
  return undefined;
41
35
  }
@@ -51,11 +45,10 @@ class GitRepository {
51
45
  return undefined;
52
46
  }
53
47
  return new GitRepository({
54
- url: new node_url_1.URL(`https://${host}/${owner}/${name}`),
48
+ url: new URL(`https://${host}/${owner}/${name}`),
55
49
  owner,
56
50
  name,
57
51
  isGitHub: host === HOST_GITHUB
58
52
  });
59
53
  }
60
54
  }
61
- exports.GitRepository = GitRepository;
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GitTransaction = void 0;
4
- const logger_1 = require("../logger");
1
+ import { logger } from '../logger/logger.js';
5
2
  // TODO: Add test
6
- class GitTransaction {
3
+ export class GitTransaction {
7
4
  git;
8
5
  branchName;
9
6
  files;
@@ -14,7 +11,7 @@ class GitTransaction {
14
11
  }
15
12
  async run(operation) {
16
13
  await this.git.createBranch(this.branchName);
17
- logger_1.logger.info(`${this.branchName} branch has created.`);
14
+ logger.info(`${this.branchName} branch has created.`);
18
15
  try {
19
16
  return await operation({
20
17
  git: this.git,
@@ -30,7 +27,6 @@ class GitTransaction {
30
27
  await this.git.restore(...this.files);
31
28
  await this.git.switch('-');
32
29
  await this.git.removeBranch(this.branchName);
33
- logger_1.logger.info(`${this.branchName} branch has removed.`);
30
+ logger.info(`${this.branchName} branch has removed.`);
34
31
  }
35
32
  }
36
- exports.GitTransaction = GitTransaction;
@@ -0,0 +1,5 @@
1
+ export const createBranchName = (outdatedPackage) => {
2
+ const packageName = outdatedPackage.name;
3
+ const newVersion = outdatedPackage.newVersion.version;
4
+ return `npm-update-package/${packageName}/v${newVersion}`;
5
+ };
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GitHub = void 0;
4
- const util_1 = require("../util");
5
- class GitHub {
1
+ import { range } from '../util/range.js';
2
+ export class GitHub {
6
3
  octokit;
7
4
  constructor(octokit) {
8
5
  this.octokit = octokit;
@@ -61,7 +58,7 @@ class GitHub {
61
58
  }
62
59
  async fetchBranches({ owner, repo }) {
63
60
  const branches = [];
64
- for (const page of (0, util_1.range)(1, 11)) {
61
+ for (const page of range(1, 11)) {
65
62
  const { data } = await this.octokit.repos.listBranches({
66
63
  owner,
67
64
  repo,
@@ -85,7 +82,7 @@ class GitHub {
85
82
  }
86
83
  async fetchPullRequests({ owner, repo }) {
87
84
  const pullRequests = [];
88
- for (const page of (0, util_1.range)(1, 11)) {
85
+ for (const page of range(1, 11)) {
89
86
  const { data } = await this.octokit.pulls.list({
90
87
  owner,
91
88
  repo,
@@ -117,4 +114,3 @@ class GitHub {
117
114
  await this.octokit.pulls.requestReviewers(params);
118
115
  }
119
116
  }
120
- exports.GitHub = GitHub;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BranchFinder = void 0;
4
- class BranchFinder {
1
+ export class BranchFinder {
5
2
  branches;
6
3
  constructor(branches) {
7
4
  this.branches = branches;
@@ -10,4 +7,3 @@ class BranchFinder {
10
7
  return this.branches.find(({ name }) => name === branchName);
11
8
  }
12
9
  }
13
- exports.BranchFinder = BranchFinder;
@@ -0,0 +1,9 @@
1
+ import { createOctokit } from './createOctokit.js';
2
+ import { GitHub } from './GitHub.js';
3
+ export const createGitHub = ({ host, token }) => {
4
+ const octokit = createOctokit({
5
+ host,
6
+ token
7
+ });
8
+ return new GitHub(octokit);
9
+ };
@@ -0,0 +1,22 @@
1
+ import { Octokit } from '@octokit/rest';
2
+ import * as app from '../app.js';
3
+ export const createOctokit = ({ host, token }) => {
4
+ const userAgent = `${app.name}/${app.version}`;
5
+ if (token === undefined) {
6
+ return new Octokit({
7
+ userAgent
8
+ });
9
+ }
10
+ const auth = `token ${token}`;
11
+ if (host === 'github.com') {
12
+ return new Octokit({
13
+ auth,
14
+ userAgent
15
+ });
16
+ }
17
+ return new Octokit({
18
+ auth,
19
+ userAgent,
20
+ baseUrl: `https://${host}/api/v3`
21
+ });
22
+ };
@@ -0,0 +1,5 @@
1
+ import { RequestError } from '@octokit/request-error';
2
+ import { StatusCodes } from 'http-status-codes';
3
+ export const isNotFoundError = (value) => {
4
+ return value instanceof RequestError && value.status === StatusCodes.NOT_FOUND;
5
+ };
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LabelCreator = void 0;
4
- const logger_1 = require("../../../logger");
5
- const errors_1 = require("../../errors");
1
+ import { logger } from '../../../logger/logger.js';
2
+ import { isNotFoundError } from '../../errors/NotFoundError.js';
6
3
  // TODO: Split into multiple classes and functions
7
- class LabelCreator {
4
+ export class LabelCreator {
8
5
  github;
9
6
  gitRepo;
10
7
  constructor({ github, gitRepo }) {
@@ -14,7 +11,7 @@ class LabelCreator {
14
11
  async create({ name, description, color }) {
15
12
  const label = await this.fetchLabel(name);
16
13
  if (label !== undefined) {
17
- logger_1.logger.info(`Skip creating ${name} label because it already exists.`);
14
+ logger.info(`Skip creating ${name} label because it already exists.`);
18
15
  return;
19
16
  }
20
17
  await this.createLabel({
@@ -22,7 +19,7 @@ class LabelCreator {
22
19
  description,
23
20
  color
24
21
  });
25
- logger_1.logger.info(`${name} label has created.`);
22
+ logger.info(`${name} label has created.`);
26
23
  }
27
24
  async createLabel({ name, description, color }) {
28
25
  await this.github.createLabel({
@@ -42,8 +39,8 @@ class LabelCreator {
42
39
  });
43
40
  }
44
41
  catch (error) {
45
- if ((0, errors_1.isNotFoundError)(error)) {
46
- logger_1.logger.warn(error);
42
+ if (isNotFoundError(error)) {
43
+ logger.warn(error);
47
44
  return undefined;
48
45
  }
49
46
  else {
@@ -52,4 +49,3 @@ class LabelCreator {
52
49
  }
53
50
  }
54
51
  }
55
- exports.LabelCreator = LabelCreator;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PullRequestCloser = void 0;
4
- class PullRequestCloser {
1
+ export class PullRequestCloser {
5
2
  github;
6
3
  constructor(github) {
7
4
  this.github = github;
@@ -21,4 +18,3 @@ class PullRequestCloser {
21
18
  });
22
19
  }
23
20
  }
24
- exports.PullRequestCloser = PullRequestCloser;
@@ -0,0 +1,13 @@
1
+ import { logger } from '../../../logger/logger.js';
2
+ export class PullRequestsCloser {
3
+ pullRequestCloser;
4
+ constructor(pullRequestCloser) {
5
+ this.pullRequestCloser = pullRequestCloser;
6
+ }
7
+ async close(pullRequests) {
8
+ await Promise.all(pullRequests.map(async (pullRequest) => {
9
+ await this.pullRequestCloser.close(pullRequest);
10
+ logger.info(`Pull request #${pullRequest.number} has closed. ${pullRequest.html_url}`);
11
+ }));
12
+ }
13
+ }
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AssigneesAdder = void 0;
4
- const util_1 = require("../../../util");
5
- class AssigneesAdder {
1
+ import { sampleSize } from '../../../util/sampleSize.js';
2
+ export class AssigneesAdder {
6
3
  github;
7
4
  gitRepo;
8
5
  constructor({ github, gitRepo }) {
@@ -14,8 +11,7 @@ class AssigneesAdder {
14
11
  owner: this.gitRepo.owner,
15
12
  repo: this.gitRepo.name,
16
13
  issueNumber,
17
- assignees: size === undefined ? assignees : (0, util_1.sampleSize)(assignees, size)
14
+ assignees: size === undefined ? assignees : sampleSize(assignees, size)
18
15
  });
19
16
  }
20
17
  }
21
- exports.AssigneesAdder = AssigneesAdder;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GitHubUrlOptimizer = void 0;
4
- const node_url_1 = require("node:url");
5
- class GitHubUrlOptimizer {
1
+ import { URL } from 'node:url';
2
+ export class GitHubUrlOptimizer {
6
3
  options;
7
4
  constructor(options) {
8
5
  this.options = options;
@@ -11,11 +8,10 @@ class GitHubUrlOptimizer {
11
8
  * Convert URL to prevent linking to other repositories.
12
9
  */
13
10
  optimize(url) {
14
- const newUrl = url instanceof node_url_1.URL ? url : new node_url_1.URL(url);
11
+ const newUrl = url instanceof URL ? url : new URL(url);
15
12
  if (newUrl.host === 'github.com') {
16
13
  newUrl.host = this.options.prBodyGithubHost;
17
14
  }
18
15
  return newUrl;
19
16
  }
20
17
  }
21
- exports.GitHubUrlOptimizer = GitHubUrlOptimizer;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LabelsAdder = void 0;
4
1
  const DEFAULT_LABELS = ['npm-update-package'];
5
- class LabelsAdder {
2
+ export class LabelsAdder {
6
3
  options;
7
4
  github;
8
5
  gitRepo;
@@ -21,4 +18,3 @@ class LabelsAdder {
21
18
  });
22
19
  }
23
20
  }
24
- exports.LabelsAdder = LabelsAdder;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PackageDiffsSectionCreator = void 0;
4
- class PackageDiffsSectionCreator {
1
+ export class PackageDiffsSectionCreator {
5
2
  gitHubUrlOptimizer;
6
3
  constructor(gitHubUrlOptimizer) {
7
4
  this.gitHubUrlOptimizer = gitHubUrlOptimizer;
@@ -22,4 +19,3 @@ class PackageDiffsSectionCreator {
22
19
  ${links.join('\n')}`;
23
20
  }
24
21
  }
25
- exports.PackageDiffsSectionCreator = PackageDiffsSectionCreator;
@@ -1,14 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PullRequestBodyCreator = void 0;
4
- const file_1 = require("../../../file");
5
- const package_json_1 = require("../../../package-json");
6
- const createFooter_1 = require("./createFooter");
7
- const createMetadataSection_1 = require("./createMetadataSection");
8
- const createNotesSection_1 = require("./createNotesSection");
9
- const createOutdatedPackagesTable_1 = require("./createOutdatedPackagesTable");
1
+ import { readFile } from '../../../file/readFile.js';
2
+ import { extractRepository } from '../../../package-json/extractRepository.js';
3
+ import { parsePackageJson } from '../../../package-json/parsePackageJson.js';
4
+ import { createFooter } from './createFooter.js';
5
+ import { createMetadataSection } from './createMetadataSection.js';
6
+ import { createNotesSection } from './createNotesSection.js';
7
+ import { createOutdatedPackagesTable } from './createOutdatedPackagesTable.js';
10
8
  // TODO: Split into multiple classes and functions
11
- class PullRequestBodyCreator {
9
+ export class PullRequestBodyCreator {
12
10
  options;
13
11
  releasesFetcher;
14
12
  packageDiffsSectionCreator;
@@ -21,7 +19,7 @@ class PullRequestBodyCreator {
21
19
  }
22
20
  async create(outdatedPackage) {
23
21
  const sections = [];
24
- const outdatedPackagesTable = (0, createOutdatedPackagesTable_1.createOutdatedPackagesTable)(outdatedPackage);
22
+ const outdatedPackagesTable = createOutdatedPackagesTable(outdatedPackage);
25
23
  sections.push(`This PR updates these packages:\n\n${outdatedPackagesTable}`);
26
24
  const gitRepo = await this.extractRepository(outdatedPackage);
27
25
  const diffSection = this.packageDiffsSectionCreator.create({
@@ -42,19 +40,18 @@ class PullRequestBodyCreator {
42
40
  }
43
41
  }
44
42
  if (this.options.prBodyNotes !== undefined) {
45
- const notesSection = (0, createNotesSection_1.createNotesSection)(this.options.prBodyNotes);
43
+ const notesSection = createNotesSection(this.options.prBodyNotes);
46
44
  sections.push(notesSection);
47
45
  }
48
- const metadataSection = (0, createMetadataSection_1.createMetadataSection)(outdatedPackage);
46
+ const metadataSection = createMetadataSection(outdatedPackage);
49
47
  sections.push(`---\n${metadataSection}`);
50
- const footer = (0, createFooter_1.createFooter)();
48
+ const footer = createFooter();
51
49
  sections.push(`---\n${footer}`);
52
50
  return sections.join('\n\n');
53
51
  }
54
52
  async extractRepository(outdatedPackage) {
55
- const packageJson = await (0, file_1.readFile)(`node_modules/${outdatedPackage.name}/package.json`);
56
- const pkg = (0, package_json_1.parsePackageJson)(packageJson);
57
- return (0, package_json_1.extractRepository)(pkg);
53
+ const packageJson = await readFile(`node_modules/${outdatedPackage.name}/package.json`);
54
+ const pkg = parsePackageJson(packageJson);
55
+ return extractRepository(pkg);
58
56
  }
59
57
  }
60
- exports.PullRequestBodyCreator = PullRequestBodyCreator;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PullRequestCreator = void 0;
4
- const logger_1 = require("../../../logger");
5
- class PullRequestCreator {
1
+ import { logger } from '../../../logger/logger.js';
2
+ export class PullRequestCreator {
6
3
  options;
7
4
  github;
8
5
  gitRepo;
@@ -25,9 +22,9 @@ class PullRequestCreator {
25
22
  }
26
23
  async create({ outdatedPackage, branchName }) {
27
24
  const title = this.pullRequestTitleCreator.create(outdatedPackage);
28
- logger_1.logger.debug(`title=${title}`);
25
+ logger.debug(`title=${title}`);
29
26
  const body = await this.pullRequestBodyCreator.create(outdatedPackage);
30
- logger_1.logger.debug(`body=${body}`);
27
+ logger.debug(`body=${body}`);
31
28
  const pullRequest = await this.github.createPullRequest({
32
29
  owner: this.gitRepo.owner,
33
30
  repo: this.gitRepo.name,
@@ -37,7 +34,7 @@ class PullRequestCreator {
37
34
  body,
38
35
  draft: this.options.draftPr
39
36
  });
40
- logger_1.logger.debug(`pullRequest=${JSON.stringify(pullRequest)}`);
37
+ logger.debug(`pullRequest=${JSON.stringify(pullRequest)}`);
41
38
  await this.labelsAdder.add(pullRequest.number);
42
39
  if (this.options.assignees !== undefined) {
43
40
  await this.assigneesAdder.add({
@@ -56,4 +53,3 @@ class PullRequestCreator {
56
53
  return pullRequest;
57
54
  }
58
55
  }
59
- exports.PullRequestCreator = PullRequestCreator;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PullRequestTitleCreator = void 0;
4
- const mustache_1 = require("mustache");
5
- class PullRequestTitleCreator {
1
+ import mustache from 'mustache';
2
+ export class PullRequestTitleCreator {
6
3
  template;
7
4
  constructor(template) {
8
5
  this.template = template;
@@ -13,7 +10,7 @@ class PullRequestTitleCreator {
13
10
  const newVersion = outdatedPackage.newVersion.version;
14
11
  const level = outdatedPackage.level;
15
12
  const dependencyType = outdatedPackage.dependencyType;
16
- return (0, mustache_1.render)(this.template, {
13
+ return mustache.render(this.template, {
17
14
  packageName,
18
15
  currentVersion,
19
16
  newVersion,
@@ -22,4 +19,3 @@ class PullRequestTitleCreator {
22
19
  });
23
20
  }
24
21
  }
25
- exports.PullRequestTitleCreator = PullRequestTitleCreator;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReleaseNotesSectionCreator = void 0;
4
- class ReleaseNotesSectionCreator {
1
+ export class ReleaseNotesSectionCreator {
5
2
  gitHubUrlOptimizer;
6
3
  constructor(gitHubUrlOptimizer) {
7
4
  this.gitHubUrlOptimizer = gitHubUrlOptimizer;
@@ -16,4 +13,3 @@ class ReleaseNotesSectionCreator {
16
13
  ${items.join('\n')}`;
17
14
  }
18
15
  }
19
- exports.ReleaseNotesSectionCreator = ReleaseNotesSectionCreator;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReviewersAdder = void 0;
4
- const util_1 = require("../../../util");
5
- class ReviewersAdder {
1
+ import { sampleSize } from '../../../util/sampleSize.js';
2
+ export class ReviewersAdder {
6
3
  github;
7
4
  gitRepo;
8
5
  constructor({ github, gitRepo }) {
@@ -14,8 +11,7 @@ class ReviewersAdder {
14
11
  owner: this.gitRepo.owner,
15
12
  repo: this.gitRepo.name,
16
13
  pullNumber,
17
- reviewers: size === undefined ? reviewers : (0, util_1.sampleSize)(reviewers, size)
14
+ reviewers: size === undefined ? reviewers : sampleSize(reviewers, size)
18
15
  });
19
16
  }
20
17
  }
21
- exports.ReviewersAdder = ReviewersAdder;
@@ -0,0 +1,4 @@
1
+ import * as app from '../../../app.js';
2
+ export const createFooter = () => {
3
+ return `This PR has been generated by [${app.name}](${app.homepage}) v${app.version}`;
4
+ };
@@ -0,0 +1,21 @@
1
+ import { toJSON } from '../../../json/toJSON.js';
2
+ import { createPullRequestMetadata } from '../metadata/createPullRequestMetadata.js';
3
+ export const createMetadataSection = (outdatedPackage) => {
4
+ const metadata = createPullRequestMetadata([outdatedPackage]);
5
+ const json = toJSON(metadata, {
6
+ pretty: true
7
+ });
8
+ return `<details>
9
+ <summary>Metadata</summary>
10
+
11
+ **Don't remove or edit this section because it will be used by npm-update-package.**
12
+
13
+ <div id="npm-update-package-metadata">
14
+
15
+ \`\`\`json
16
+ ${json}
17
+ \`\`\`
18
+
19
+ </div>
20
+ </details>`;
21
+ };
@@ -0,0 +1,5 @@
1
+ export const createNotesSection = (notes) => {
2
+ return `## Notes
3
+
4
+ ${notes}`;
5
+ };