npm-update-package 0.2.1 → 0.5.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 (90) hide show
  1. package/{FUNDING.yml → .github/FUNDING.yml} +0 -0
  2. package/README.md +18 -0
  3. package/dist/app.js +1 -1
  4. package/dist/git/BranchNameCreator.js +22 -0
  5. package/dist/git/CommitMessageCreator.js +22 -0
  6. package/dist/git/index.js +5 -1
  7. package/dist/{enums → logger}/LogLevel.js +0 -0
  8. package/dist/logger/index.js +4 -1
  9. package/dist/main.js +15 -6
  10. package/dist/ncu/Ncu.js +4 -2
  11. package/dist/ncu/NcuOutdatedPackagesConverter.js +3 -3
  12. package/dist/{types → ncu}/OutdatedPackage.js +0 -0
  13. package/dist/{values → ncu}/PackageVersion.js +0 -0
  14. package/dist/{enums → ncu}/UpdateType.js +0 -0
  15. package/dist/ncu/index.js +6 -1
  16. package/dist/ncu/toUpdateType.js +4 -4
  17. package/dist/options/Options.js +5 -3
  18. package/dist/options/initOptions.js +14 -4
  19. package/dist/{read-package-json → package-json}/Package.js +3 -3
  20. package/dist/{read-package-json → package-json}/PackageDependencies.js +0 -0
  21. package/dist/package-json/PackageJsonParser.js +21 -0
  22. package/dist/package-json/PackageJsonReader.js +20 -0
  23. package/dist/package-json/index.js +7 -0
  24. package/dist/{enums → package-manager}/PackageManagerName.js +0 -0
  25. package/dist/package-manager/index.js +4 -1
  26. package/dist/{outdated-package-processor → processors}/OutdatedPackageProcessor.js +5 -5
  27. package/dist/{outdated-packages-processor → processors}/OutdatedPackagesProcessor.js +0 -0
  28. package/dist/{types → processors}/Result.js +0 -0
  29. package/dist/{outdated-packages-processor → processors}/index.js +3 -1
  30. package/package.json +3 -1
  31. package/src/app.ts +1 -1
  32. package/src/git/BranchNameCreator.test.ts +17 -0
  33. package/src/git/BranchNameCreator.ts +19 -0
  34. package/src/git/CommitMessageCreator.test.ts +17 -0
  35. package/src/git/CommitMessageCreator.ts +19 -0
  36. package/src/git/index.ts +2 -0
  37. package/src/github/PullRequestCreator.ts +1 -1
  38. package/src/github/createPullRequestBody.test.ts +4 -2
  39. package/src/github/createPullRequestBody.ts +1 -1
  40. package/src/github/createPullRequestTitle.test.ts +1 -2
  41. package/src/github/createPullRequestTitle.ts +1 -1
  42. package/src/{enums → logger}/LogLevel.ts +0 -0
  43. package/src/logger/createLogger.ts +1 -1
  44. package/src/logger/index.ts +4 -0
  45. package/src/main.ts +21 -4
  46. package/src/ncu/Ncu.ts +5 -3
  47. package/src/ncu/NcuOutdatedPackagesConverter.ts +3 -3
  48. package/src/{types → ncu}/OutdatedPackage.ts +2 -2
  49. package/src/{values → ncu}/PackageVersion.test.ts +0 -0
  50. package/src/{values → ncu}/PackageVersion.ts +0 -0
  51. package/src/{enums → ncu}/UpdateType.ts +0 -0
  52. package/src/ncu/index.ts +6 -0
  53. package/src/ncu/toUpdateType.test.ts +2 -2
  54. package/src/ncu/toUpdateType.ts +2 -2
  55. package/src/options/Options.ts +3 -1
  56. package/src/options/initOptions.ts +14 -4
  57. package/src/{read-package-json → package-json}/Package.ts +1 -1
  58. package/src/{read-package-json → package-json}/PackageDependencies.ts +0 -0
  59. package/src/package-json/PackageJsonParser.ts +19 -0
  60. package/src/package-json/PackageJsonReader.ts +27 -0
  61. package/src/package-json/index.ts +3 -0
  62. package/src/{enums → package-manager}/PackageManagerName.ts +0 -0
  63. package/src/package-manager/createPackageManager.ts +1 -1
  64. package/src/package-manager/index.ts +4 -0
  65. package/src/{outdated-package-processor → processors}/OutdatedPackageProcessor.ts +18 -10
  66. package/src/{outdated-packages-processor → processors}/OutdatedPackagesProcessor.ts +3 -5
  67. package/src/{types → processors}/Result.ts +1 -1
  68. package/src/{outdated-packages-processor → processors}/index.ts +1 -0
  69. package/dist/enums/index.js +0 -12
  70. package/dist/outdated-package-processor/createBranchName.js +0 -9
  71. package/dist/outdated-package-processor/createCommitMessage.js +0 -10
  72. package/dist/outdated-package-processor/index.js +0 -5
  73. package/dist/read-package-json/index.js +0 -5
  74. package/dist/read-package-json/parsePackageJson.js +0 -15
  75. package/dist/read-package-json/readFile.js +0 -12
  76. package/dist/read-package-json/readPackageJson.js +0 -11
  77. package/dist/types/index.js +0 -2
  78. package/dist/values/index.js +0 -5
  79. package/src/enums/index.ts +0 -12
  80. package/src/outdated-package-processor/createBranchName.test.ts +0 -14
  81. package/src/outdated-package-processor/createBranchName.ts +0 -7
  82. package/src/outdated-package-processor/createCommitMessage.test.ts +0 -43
  83. package/src/outdated-package-processor/createCommitMessage.ts +0 -8
  84. package/src/outdated-package-processor/index.ts +0 -1
  85. package/src/read-package-json/index.ts +0 -2
  86. package/src/read-package-json/parsePackageJson.ts +0 -13
  87. package/src/read-package-json/readFile.ts +0 -6
  88. package/src/read-package-json/readPackageJson.ts +0 -9
  89. package/src/types/index.ts +0 -2
  90. package/src/values/index.ts +0 -1
package/src/main.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import {
2
+ BranchNameCreator,
3
+ CommitMessageCreator,
2
4
  Committer,
3
5
  Git
4
6
  } from './git'
@@ -10,9 +12,15 @@ import {
10
12
  import type { Logger } from './logger'
11
13
  import { Ncu } from './ncu'
12
14
  import type { Options } from './options'
13
- import { OutdatedPackageProcessor } from './outdated-package-processor'
14
- import { OutdatedPackagesProcessor } from './outdated-packages-processor'
15
+ import {
16
+ PackageJsonParser,
17
+ PackageJsonReader
18
+ } from './package-json'
15
19
  import { createPackageManager } from './package-manager'
20
+ import {
21
+ OutdatedPackageProcessor,
22
+ OutdatedPackagesProcessor
23
+ } from './processors'
16
24
  import { Terminal } from './terminal'
17
25
 
18
26
  // TODO: add test
@@ -25,7 +33,12 @@ export const main = async ({
25
33
  }): Promise<void> => {
26
34
  logger.debug(`options=${JSON.stringify(options)}`)
27
35
 
28
- const ncu = new Ncu()
36
+ const packageJsonParser = new PackageJsonParser(logger)
37
+ const packageJsonReader = new PackageJsonReader({
38
+ packageJsonParser,
39
+ logger
40
+ })
41
+ const ncu = new Ncu(packageJsonReader)
29
42
  const outdatedPackages = await ncu.check()
30
43
  logger.debug(`outdatedPackages=${JSON.stringify(outdatedPackages)}`)
31
44
 
@@ -75,6 +88,8 @@ export const main = async ({
75
88
  githubRepo,
76
89
  logger
77
90
  })
91
+ const branchNameCreator = new BranchNameCreator(options.branchName)
92
+ const commitMessageCreator = new CommitMessageCreator(options.commitMessage)
78
93
  const outdatedPackageProcessor = new OutdatedPackageProcessor({
79
94
  committer,
80
95
  git,
@@ -82,7 +97,9 @@ export const main = async ({
82
97
  packageManager,
83
98
  pullRequestCreator,
84
99
  remoteBranchExistenceChecker,
85
- logger
100
+ logger,
101
+ branchNameCreator,
102
+ commitMessageCreator
86
103
  })
87
104
  const outdatedPackagesProcessor = new OutdatedPackagesProcessor({
88
105
  outdatedPackageProcessor,
package/src/ncu/Ncu.ts CHANGED
@@ -1,12 +1,14 @@
1
1
  import { run } from 'npm-check-updates'
2
2
  import type { Options } from 'npm-check-updates/build/src/types'
3
- import { readPackageJson } from '../read-package-json'
4
- import type { OutdatedPackage } from '../types'
3
+ import type { OutdatedPackage } from '../ncu'
4
+ import type { PackageJsonReader } from '../package-json'
5
5
  import { isNcuOutdatedPackages } from './isNcuOutdatedPackages'
6
6
  import { NcuOutdatedPackagesConverter } from './NcuOutdatedPackagesConverter'
7
7
 
8
8
  // TODO: add test
9
9
  export class Ncu {
10
+ constructor (private readonly packageJsonReader: PackageJsonReader) {}
11
+
10
12
  async check (): Promise<OutdatedPackage[]> {
11
13
  return await this.run({
12
14
  jsonUpgraded: true
@@ -22,7 +24,7 @@ export class Ncu {
22
24
  }
23
25
 
24
26
  private async run (options: Options): Promise<OutdatedPackage[]> {
25
- const pkg = await readPackageJson('./package.json')
27
+ const pkg = await this.packageJsonReader.read('./package.json')
26
28
  const currentDependencies = {
27
29
  ...pkg.dependencies,
28
30
  ...pkg.devDependencies,
@@ -1,7 +1,7 @@
1
- import type { PackageDependencies } from '../read-package-json'
2
- import type { OutdatedPackage } from '../types'
3
- import { PackageVersion } from '../values'
1
+ import type { PackageDependencies } from '../package-json'
4
2
  import type { NcuOutdatedPackages } from './NcuOutdatedPackages'
3
+ import type { OutdatedPackage } from './OutdatedPackage'
4
+ import { PackageVersion } from './PackageVersion'
5
5
  import { toUpdateType } from './toUpdateType'
6
6
 
7
7
  // TODO: add test
@@ -1,5 +1,5 @@
1
- import type { UpdateType } from '../enums/UpdateType'
2
- import type { PackageVersion } from '../values'
1
+ import type { PackageVersion } from './PackageVersion'
2
+ import type { UpdateType } from './UpdateType'
3
3
 
4
4
  export interface OutdatedPackage {
5
5
  name: string
File without changes
File without changes
File without changes
package/src/ncu/index.ts CHANGED
@@ -1 +1,7 @@
1
1
  export { Ncu } from './Ncu'
2
+ export type { OutdatedPackage } from './OutdatedPackage'
3
+ export { PackageVersion } from './PackageVersion'
4
+ export {
5
+ isUpdateType,
6
+ UpdateType
7
+ } from './UpdateType'
@@ -1,6 +1,6 @@
1
- import { UpdateType } from '../enums'
2
- import { PackageVersion } from '../values'
1
+ import { PackageVersion } from './PackageVersion'
3
2
  import { toUpdateType } from './toUpdateType'
3
+ import { UpdateType } from './UpdateType'
4
4
 
5
5
  describe('toUpdateType', () => {
6
6
  const currentVersion = PackageVersion.of('1.0.0')
@@ -1,5 +1,5 @@
1
- import { UpdateType } from '../enums'
2
- import type { PackageVersion } from '../values'
1
+ import type { PackageVersion } from './PackageVersion'
2
+ import { UpdateType } from './UpdateType'
3
3
 
4
4
  export const toUpdateType = (currentVersion: PackageVersion, newVersion: PackageVersion): UpdateType => {
5
5
  if (currentVersion.major !== newVersion.major) {
@@ -8,8 +8,10 @@ import {
8
8
  } from 'io-ts'
9
9
  import type { TypeOf } from 'io-ts'
10
10
 
11
- export const Options = intersection([
11
+ const Options = intersection([
12
12
  type({
13
+ branchName: string,
14
+ commitMessage: string,
13
15
  githubToken: string,
14
16
  logLevel: union([literal('info'), literal('debug')]),
15
17
  packageManager: union([literal('npm'), literal('yarn')])
@@ -3,6 +3,8 @@ import {
3
3
  program
4
4
  } from 'commander'
5
5
  import { app } from '../app'
6
+ import { LogLevel } from '../logger'
7
+ import { PackageManagerName } from '../package-manager'
6
8
  import { isOptions } from './Options'
7
9
  import type { Options } from './Options'
8
10
 
@@ -10,18 +12,26 @@ import type { Options } from './Options'
10
12
  export const initOptions = (): Options => {
11
13
  program
12
14
  .version(app.version)
15
+ .option('--branch-name <value>', 'Branch name template', 'npm-update-package/{{{packageName}}}/v{{newVersion}}')
16
+ .option('--commit-message <value>', 'Commit message template', 'chore(deps): {{updateType}} update {{{packageName}}} to v{{newVersion}}')
13
17
  .option('--git-user-email <value>', 'User email of commit')
14
18
  .option('--git-user-name <value>', 'User name of commit')
15
19
  .requiredOption('--github-token <value>', 'GitHub token')
16
20
  .addOption(
17
21
  new Option('--log-level <value>', 'Log level to show')
18
- .choices(['info', 'debug'])
19
- .default('info')
22
+ .choices([
23
+ LogLevel.Info,
24
+ LogLevel.Debug
25
+ ])
26
+ .default(LogLevel.Info)
20
27
  )
21
28
  .addOption(
22
29
  new Option('--package-manager <value>', 'Package manager of your project')
23
- .choices(['npm', 'yarn'])
24
- .default('npm')
30
+ .choices([
31
+ PackageManagerName.Npm,
32
+ PackageManagerName.Yarn
33
+ ])
34
+ .default(PackageManagerName.Npm)
25
35
  )
26
36
  program.parse(process.argv)
27
37
  const options = program.opts()
@@ -7,7 +7,7 @@ import {
7
7
  import type { TypeOf } from 'io-ts'
8
8
  import { PackageDependencies } from './PackageDependencies'
9
9
 
10
- export const Package = intersection([
10
+ const Package = intersection([
11
11
  type({
12
12
  name: string,
13
13
  version: string
@@ -0,0 +1,19 @@
1
+ import type { Logger } from '../logger'
2
+ import { isPackage } from './Package'
3
+ import type { Package } from './Package'
4
+
5
+ // TODO: add test
6
+ export class PackageJsonParser {
7
+ constructor (private readonly logger: Logger) {}
8
+
9
+ parse (json: string): Package {
10
+ const parsed: unknown = JSON.parse(json)
11
+ this.logger.debug(`parsed=${JSON.stringify(parsed)}`)
12
+
13
+ if (isPackage(parsed)) {
14
+ return parsed
15
+ } else {
16
+ throw new Error(`Failed to parse package.json. json=${json}`)
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,27 @@
1
+ import fs from 'fs'
2
+ import type { Logger } from '../logger'
3
+ import type { Package } from './Package'
4
+ import type { PackageJsonParser } from './PackageJsonParser'
5
+
6
+ // TODO: add test
7
+ export class PackageJsonReader {
8
+ private readonly packageJsonParser: PackageJsonParser
9
+ private readonly logger: Logger
10
+
11
+ constructor ({
12
+ packageJsonParser,
13
+ logger
14
+ }: {
15
+ packageJsonParser: PackageJsonParser
16
+ logger: Logger
17
+ }) {
18
+ this.packageJsonParser = packageJsonParser
19
+ this.logger = logger
20
+ }
21
+
22
+ async read (filePath: string): Promise<Package> {
23
+ const json = await fs.promises.readFile(filePath, 'utf8')
24
+ this.logger.debug(`json=${json}`)
25
+ return this.packageJsonParser.parse(json)
26
+ }
27
+ }
@@ -0,0 +1,3 @@
1
+ export { PackageJsonParser } from './PackageJsonParser'
2
+ export { PackageJsonReader } from './PackageJsonReader'
3
+ export type { PackageDependencies } from './PackageDependencies'
@@ -1,7 +1,7 @@
1
- import type { PackageManagerName } from '../enums'
2
1
  import type { Terminal } from '../terminal'
3
2
  import { Npm } from './Npm'
4
3
  import type { PackageManager } from './PackageManager'
4
+ import type { PackageManagerName } from './PackageManagerName'
5
5
  import { Yarn } from './Yarn'
6
6
 
7
7
  // TODO: add test
@@ -1,4 +1,8 @@
1
1
  export { createPackageManager } from './createPackageManager'
2
2
  export { Npm } from './Npm'
3
3
  export type { PackageManager } from './PackageManager'
4
+ export {
5
+ isPackageManagerName,
6
+ PackageManagerName
7
+ } from './PackageManagerName'
4
8
  export { Yarn } from './Yarn'
@@ -1,4 +1,6 @@
1
1
  import type {
2
+ BranchNameCreator,
3
+ CommitMessageCreator,
2
4
  Committer,
3
5
  Git
4
6
  } from '../git'
@@ -7,14 +9,12 @@ import type {
7
9
  RemoteBranchExistenceChecker
8
10
  } from '../github'
9
11
  import type { Logger } from '../logger'
10
- import type { Ncu } from '../ncu'
11
- import type { PackageManager } from '../package-manager'
12
12
  import type {
13
- OutdatedPackage,
14
- Result
15
- } from '../types'
16
- import { createBranchName } from './createBranchName'
17
- import { createCommitMessage } from './createCommitMessage'
13
+ Ncu,
14
+ OutdatedPackage
15
+ } from '../ncu'
16
+ import type { PackageManager } from '../package-manager'
17
+ import type { Result } from './Result'
18
18
 
19
19
  // TODO: add test
20
20
  export class OutdatedPackageProcessor {
@@ -25,6 +25,8 @@ export class OutdatedPackageProcessor {
25
25
  private readonly pullRequestCreator: PullRequestCreator
26
26
  private readonly remoteBranchExistenceChecker: RemoteBranchExistenceChecker
27
27
  private readonly logger: Logger
28
+ private readonly branchNameCreator: BranchNameCreator
29
+ private readonly commitMessageCreator: CommitMessageCreator
28
30
 
29
31
  constructor ({
30
32
  committer,
@@ -33,7 +35,9 @@ export class OutdatedPackageProcessor {
33
35
  packageManager,
34
36
  pullRequestCreator,
35
37
  remoteBranchExistenceChecker,
36
- logger
38
+ logger,
39
+ branchNameCreator,
40
+ commitMessageCreator
37
41
  }: {
38
42
  committer: Committer
39
43
  git: Git
@@ -42,6 +46,8 @@ export class OutdatedPackageProcessor {
42
46
  pullRequestCreator: PullRequestCreator
43
47
  remoteBranchExistenceChecker: RemoteBranchExistenceChecker
44
48
  logger: Logger
49
+ branchNameCreator: BranchNameCreator
50
+ commitMessageCreator: CommitMessageCreator
45
51
  }) {
46
52
  this.committer = committer
47
53
  this.git = git
@@ -50,13 +56,15 @@ export class OutdatedPackageProcessor {
50
56
  this.pullRequestCreator = pullRequestCreator
51
57
  this.remoteBranchExistenceChecker = remoteBranchExistenceChecker
52
58
  this.logger = logger
59
+ this.branchNameCreator = branchNameCreator
60
+ this.commitMessageCreator = commitMessageCreator
53
61
  }
54
62
 
55
63
  /**
56
64
  * Don't run in parallel because it includes file operations.
57
65
  */
58
66
  async process (outdatedPackage: OutdatedPackage): Promise<Result> {
59
- const branchName = createBranchName(outdatedPackage)
67
+ const branchName = this.branchNameCreator.create(outdatedPackage)
60
68
  this.logger.debug(`branchName=${branchName}`)
61
69
 
62
70
  if (this.remoteBranchExistenceChecker.check(branchName)) {
@@ -80,7 +88,7 @@ export class OutdatedPackageProcessor {
80
88
  this.logger.info(`${outdatedPackage.name} has updated from v${outdatedPackage.currentVersion.version} to v${outdatedPackage.newVersion.version}`)
81
89
 
82
90
  await this.git.add(...this.packageManager.packageFiles)
83
- const message = createCommitMessage(outdatedPackage)
91
+ const message = this.commitMessageCreator.create(outdatedPackage)
84
92
  this.logger.debug(`message=${message}`)
85
93
 
86
94
  await this.committer.commit(message)
@@ -1,9 +1,7 @@
1
1
  import type { Logger } from '../logger'
2
- import type { OutdatedPackageProcessor } from '../outdated-package-processor'
3
- import type {
4
- OutdatedPackage,
5
- Result
6
- } from '../types'
2
+ import type { OutdatedPackage } from '../ncu'
3
+ import type { OutdatedPackageProcessor } from './OutdatedPackageProcessor'
4
+ import type { Result } from './Result'
7
5
 
8
6
  export class OutdatedPackagesProcessor {
9
7
  private readonly outdatedPackageProcessor: OutdatedPackageProcessor
@@ -1,4 +1,4 @@
1
- import type { OutdatedPackage } from './OutdatedPackage'
1
+ import type { OutdatedPackage } from '../ncu'
2
2
 
3
3
  export interface Result {
4
4
  outdatedPackage: OutdatedPackage
@@ -1 +1,2 @@
1
+ export { OutdatedPackageProcessor } from './OutdatedPackageProcessor'
1
2
  export { OutdatedPackagesProcessor } from './OutdatedPackagesProcessor'
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UpdateType = exports.isUpdateType = exports.PackageManagerName = exports.isPackageManagerName = exports.LogLevel = exports.isLogLevel = void 0;
4
- var LogLevel_1 = require("./LogLevel");
5
- Object.defineProperty(exports, "isLogLevel", { enumerable: true, get: function () { return LogLevel_1.isLogLevel; } });
6
- Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return LogLevel_1.LogLevel; } });
7
- var PackageManagerName_1 = require("./PackageManagerName");
8
- Object.defineProperty(exports, "isPackageManagerName", { enumerable: true, get: function () { return PackageManagerName_1.isPackageManagerName; } });
9
- Object.defineProperty(exports, "PackageManagerName", { enumerable: true, get: function () { return PackageManagerName_1.PackageManagerName; } });
10
- var UpdateType_1 = require("./UpdateType");
11
- Object.defineProperty(exports, "isUpdateType", { enumerable: true, get: function () { return UpdateType_1.isUpdateType; } });
12
- Object.defineProperty(exports, "UpdateType", { enumerable: true, get: function () { return UpdateType_1.UpdateType; } });
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createBranchName = void 0;
4
- const createBranchName = (outdatedPackage) => {
5
- const packageName = outdatedPackage.name;
6
- const newVersion = outdatedPackage.newVersion.version;
7
- return `npm-update-package/${packageName}/v${newVersion}`;
8
- };
9
- exports.createBranchName = createBranchName;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createCommitMessage = void 0;
4
- const createCommitMessage = (outdatedPackage) => {
5
- const packageName = outdatedPackage.name;
6
- const newVersion = outdatedPackage.newVersion.version;
7
- const updateType = outdatedPackage.type;
8
- return `chore(deps): ${updateType} update ${packageName} to v${newVersion}`;
9
- };
10
- exports.createCommitMessage = createCommitMessage;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OutdatedPackageProcessor = void 0;
4
- var OutdatedPackageProcessor_1 = require("./OutdatedPackageProcessor");
5
- Object.defineProperty(exports, "OutdatedPackageProcessor", { enumerable: true, get: function () { return OutdatedPackageProcessor_1.OutdatedPackageProcessor; } });
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readPackageJson = void 0;
4
- var readPackageJson_1 = require("./readPackageJson");
5
- Object.defineProperty(exports, "readPackageJson", { enumerable: true, get: function () { return readPackageJson_1.readPackageJson; } });
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parsePackageJson = void 0;
4
- const Package_1 = require("./Package");
5
- // TODO: add test
6
- const parsePackageJson = (json) => {
7
- const parsed = JSON.parse(json);
8
- if ((0, Package_1.isPackage)(parsed)) {
9
- return parsed;
10
- }
11
- else {
12
- throw new Error(`Failed to parse package.json. json=${json}`);
13
- }
14
- };
15
- exports.parsePackageJson = parsePackageJson;
@@ -1,12 +0,0 @@
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.readFile = void 0;
7
- const fs_1 = __importDefault(require("fs"));
8
- // TODO: add test
9
- const readFile = async (filePath) => {
10
- return await fs_1.default.promises.readFile(filePath, 'utf8');
11
- };
12
- exports.readFile = readFile;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.readPackageJson = void 0;
4
- const parsePackageJson_1 = require("./parsePackageJson");
5
- const readFile_1 = require("./readFile");
6
- // TODO: add test
7
- const readPackageJson = async (filePath) => {
8
- const json = await (0, readFile_1.readFile)(filePath);
9
- return (0, parsePackageJson_1.parsePackageJson)(json);
10
- };
11
- exports.readPackageJson = readPackageJson;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PackageVersion = void 0;
4
- var PackageVersion_1 = require("./PackageVersion");
5
- Object.defineProperty(exports, "PackageVersion", { enumerable: true, get: function () { return PackageVersion_1.PackageVersion; } });
@@ -1,12 +0,0 @@
1
- export {
2
- isLogLevel,
3
- LogLevel
4
- } from './LogLevel'
5
- export {
6
- isPackageManagerName,
7
- PackageManagerName
8
- } from './PackageManagerName'
9
- export {
10
- isUpdateType,
11
- UpdateType
12
- } from './UpdateType'
@@ -1,14 +0,0 @@
1
- import { PackageVersion } from '../values'
2
- import { createBranchName } from './createBranchName'
3
-
4
- describe('createBranchName', () => {
5
- it('returns branch name', () => {
6
- const actual = createBranchName({
7
- name: '@typescript-eslint/eslint-plugin',
8
- currentVersion: PackageVersion.of('1.0.0'),
9
- newVersion: PackageVersion.of('1.2.3'),
10
- type: 'major'
11
- })
12
- expect(actual).toBe('npm-update-package/@typescript-eslint/eslint-plugin/v1.2.3')
13
- })
14
- })
@@ -1,7 +0,0 @@
1
- import type { OutdatedPackage } from '../types'
2
-
3
- export const createBranchName = (outdatedPackage: OutdatedPackage): string => {
4
- const packageName = outdatedPackage.name
5
- const newVersion = outdatedPackage.newVersion.version
6
- return `npm-update-package/${packageName}/v${newVersion}`
7
- }
@@ -1,43 +0,0 @@
1
- import { UpdateType } from '../enums'
2
- import { PackageVersion } from '../values'
3
- import { createCommitMessage } from './createCommitMessage'
4
-
5
- describe('createCommitMessage', () => {
6
- const currentVersion = PackageVersion.of('1.0.0')
7
-
8
- describe('if update type is patch', () => {
9
- it('returns commit message', () => {
10
- const actual = createCommitMessage({
11
- name: '@typescript-eslint/eslint-plugin',
12
- currentVersion,
13
- newVersion: PackageVersion.of('1.0.1'),
14
- type: UpdateType.Patch
15
- })
16
- expect(actual).toBe('chore(deps): patch update @typescript-eslint/eslint-plugin to v1.0.1')
17
- })
18
- })
19
-
20
- describe('if update type is minor', () => {
21
- it('returns commit message', () => {
22
- const actual = createCommitMessage({
23
- name: '@typescript-eslint/eslint-plugin',
24
- currentVersion,
25
- newVersion: PackageVersion.of('1.1.0'),
26
- type: UpdateType.Minor
27
- })
28
- expect(actual).toBe('chore(deps): minor update @typescript-eslint/eslint-plugin to v1.1.0')
29
- })
30
- })
31
-
32
- describe('if update type is major', () => {
33
- it('returns commit message', () => {
34
- const actual = createCommitMessage({
35
- name: '@typescript-eslint/eslint-plugin',
36
- currentVersion,
37
- newVersion: PackageVersion.of('2.0.0'),
38
- type: UpdateType.Major
39
- })
40
- expect(actual).toBe('chore(deps): major update @typescript-eslint/eslint-plugin to v2.0.0')
41
- })
42
- })
43
- })
@@ -1,8 +0,0 @@
1
- import type { OutdatedPackage } from '../types'
2
-
3
- export const createCommitMessage = (outdatedPackage: OutdatedPackage): string => {
4
- const packageName = outdatedPackage.name
5
- const newVersion = outdatedPackage.newVersion.version
6
- const updateType = outdatedPackage.type
7
- return `chore(deps): ${updateType} update ${packageName} to v${newVersion}`
8
- }
@@ -1 +0,0 @@
1
- export { OutdatedPackageProcessor } from './OutdatedPackageProcessor'
@@ -1,2 +0,0 @@
1
- export type { PackageDependencies } from './PackageDependencies'
2
- export { readPackageJson } from './readPackageJson'
@@ -1,13 +0,0 @@
1
- import { isPackage } from './Package'
2
- import type { Package } from './Package'
3
-
4
- // TODO: add test
5
- export const parsePackageJson = (json: string): Package => {
6
- const parsed: unknown = JSON.parse(json)
7
-
8
- if (isPackage(parsed)) {
9
- return parsed
10
- } else {
11
- throw new Error(`Failed to parse package.json. json=${json}`)
12
- }
13
- }
@@ -1,6 +0,0 @@
1
- import fs from 'fs'
2
-
3
- // TODO: add test
4
- export const readFile = async (filePath: string): Promise<string> => {
5
- return await fs.promises.readFile(filePath, 'utf8')
6
- }
@@ -1,9 +0,0 @@
1
- import type { Package } from './Package'
2
- import { parsePackageJson } from './parsePackageJson'
3
- import { readFile } from './readFile'
4
-
5
- // TODO: add test
6
- export const readPackageJson = async (filePath: string): Promise<Package> => {
7
- const json = await readFile(filePath)
8
- return parsePackageJson(json)
9
- }
@@ -1,2 +0,0 @@
1
- export type { OutdatedPackage } from './OutdatedPackage'
2
- export type { Result } from './Result'
@@ -1 +0,0 @@
1
- export { PackageVersion } from './PackageVersion'