@aneuhold/core-ts-lib 2.4.3 → 2.4.5

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 (164) hide show
  1. package/CHANGELOG.md +27 -1
  2. package/lib/browser.d.ts +10 -6
  3. package/lib/browser.d.ts.map +1 -1
  4. package/lib/browser.js +7 -4
  5. package/lib/browser.js.map +1 -1
  6. package/lib/browser.ts +21 -5
  7. package/lib/index.d.ts +4 -4
  8. package/lib/index.d.ts.map +1 -1
  9. package/lib/index.js +4 -4
  10. package/lib/index.js.map +1 -1
  11. package/lib/index.ts +4 -4
  12. package/lib/services/{ArrayService.d.ts → Array.service.d.ts} +1 -1
  13. package/lib/services/Array.service.d.ts.map +1 -0
  14. package/lib/services/{ArrayService.js → Array.service.js} +1 -1
  15. package/lib/services/Array.service.js.map +1 -0
  16. package/lib/services/ChangelogService/{ChangelogService.d.ts → Changelog.service.d.ts} +2 -28
  17. package/lib/services/ChangelogService/Changelog.service.d.ts.map +1 -0
  18. package/lib/services/ChangelogService/{ChangelogService.js → Changelog.service.js} +11 -11
  19. package/lib/services/ChangelogService/Changelog.service.js.map +1 -0
  20. package/lib/services/ChangelogService/{ChangelogService.ts → Changelog.service.ts} +10 -10
  21. package/lib/services/ChangelogService/{ChangelogFileService.d.ts → ChangelogFile.service.d.ts} +1 -1
  22. package/lib/services/ChangelogService/ChangelogFile.service.d.ts.map +1 -0
  23. package/lib/services/ChangelogService/{ChangelogFileService.js → ChangelogFile.service.js} +1 -1
  24. package/lib/services/ChangelogService/ChangelogFile.service.js.map +1 -0
  25. package/lib/services/ChangelogService/ChangelogGenerator.js +1 -1
  26. package/lib/services/ChangelogService/ChangelogGenerator.js.map +1 -1
  27. package/lib/services/ChangelogService/ChangelogGenerator.ts +1 -1
  28. package/lib/services/ChangelogService/ChangelogParser.d.ts +1 -7
  29. package/lib/services/ChangelogService/ChangelogParser.d.ts.map +1 -1
  30. package/lib/services/ChangelogService/ChangelogParser.js +4 -4
  31. package/lib/services/ChangelogService/ChangelogParser.js.map +1 -1
  32. package/lib/services/ChangelogService/ChangelogParser.ts +6 -6
  33. package/lib/services/ChangelogService/{GitTagService.d.ts → GitTag.service.d.ts} +2 -8
  34. package/lib/services/ChangelogService/GitTag.service.d.ts.map +1 -0
  35. package/lib/services/ChangelogService/{GitTagService.js → GitTag.service.js} +4 -4
  36. package/lib/services/ChangelogService/GitTag.service.js.map +1 -0
  37. package/lib/services/ChangelogService/{GitTagService.ts → GitTag.service.ts} +3 -3
  38. package/lib/services/ChangelogService/{RepositoryInfoService.d.ts → RepositoryInfo.service.d.ts} +1 -1
  39. package/lib/services/ChangelogService/RepositoryInfo.service.d.ts.map +1 -0
  40. package/lib/services/ChangelogService/{RepositoryInfoService.js → RepositoryInfo.service.js} +1 -1
  41. package/lib/services/ChangelogService/RepositoryInfo.service.js.map +1 -0
  42. package/lib/services/ChangelogService/{RepositoryInfoService.ts → RepositoryInfo.service.ts} +1 -1
  43. package/lib/services/ChangelogService/index.d.ts +1 -1
  44. package/lib/services/ChangelogService/index.d.ts.map +1 -1
  45. package/lib/services/ChangelogService/index.js +1 -1
  46. package/lib/services/ChangelogService/index.js.map +1 -1
  47. package/lib/services/ChangelogService/index.ts +1 -1
  48. package/lib/services/ChangelogService/types.d.ts +7 -0
  49. package/lib/services/ChangelogService/types.d.ts.map +1 -1
  50. package/lib/services/ChangelogService/types.js +7 -0
  51. package/lib/services/ChangelogService/types.js.map +1 -1
  52. package/lib/services/ChangelogService/types.ts +9 -0
  53. package/lib/services/DateService/{DateService.d.ts → Date.service.d.ts} +2 -3
  54. package/lib/services/DateService/Date.service.d.ts.map +1 -0
  55. package/lib/services/DateService/{DateService.js → Date.service.js} +12 -10
  56. package/lib/services/DateService/Date.service.js.map +1 -0
  57. package/lib/services/DateService/{DateService.ts → Date.service.ts} +12 -9
  58. package/lib/services/{DependencyService.d.ts → Dependency.service.d.ts} +2 -10
  59. package/lib/services/Dependency.service.d.ts.map +1 -0
  60. package/lib/services/{DependencyService.js → Dependency.service.js} +13 -10
  61. package/lib/services/Dependency.service.js.map +1 -0
  62. package/lib/services/{DependencyService.ts → Dependency.service.ts} +15 -11
  63. package/lib/services/DependencyRegistry.d.ts +1 -2
  64. package/lib/services/DependencyRegistry.d.ts.map +1 -1
  65. package/lib/services/DependencyRegistry.js +6 -6
  66. package/lib/services/DependencyRegistry.js.map +1 -1
  67. package/lib/services/DependencyRegistry.ts +6 -6
  68. package/lib/services/FileSystemService/{FileSystemService.d.ts → FileSystem.service.d.ts} +2 -25
  69. package/lib/services/FileSystemService/FileSystem.service.d.ts.map +1 -0
  70. package/lib/services/FileSystemService/{FileSystemService.js → FileSystem.service.js} +15 -15
  71. package/lib/services/FileSystemService/FileSystem.service.js.map +1 -0
  72. package/lib/services/FileSystemService/{FileSystemService.ts → FileSystem.service.ts} +20 -17
  73. package/lib/services/FileSystemService/{GlobMatchingService.d.ts → GlobMatching.service.d.ts} +2 -18
  74. package/lib/services/FileSystemService/GlobMatching.service.d.ts.map +1 -0
  75. package/lib/services/FileSystemService/{GlobMatchingService.js → GlobMatching.service.js} +6 -6
  76. package/lib/services/FileSystemService/GlobMatching.service.js.map +1 -0
  77. package/lib/services/FileSystemService/{GlobMatchingService.ts → GlobMatching.service.ts} +5 -5
  78. package/lib/services/PackageService/JsrPackage.service.d.ts +29 -0
  79. package/lib/services/PackageService/JsrPackage.service.d.ts.map +1 -0
  80. package/lib/services/PackageService/{JsrPackageService.js → JsrPackage.service.js} +25 -22
  81. package/lib/services/PackageService/JsrPackage.service.js.map +1 -0
  82. package/lib/services/PackageService/{JsrPackageService.ts → JsrPackage.service.ts} +31 -28
  83. package/lib/services/PackageService/{NpmPackageService.d.ts → NpmPackage.service.d.ts} +2 -20
  84. package/lib/services/PackageService/NpmPackage.service.d.ts.map +1 -0
  85. package/lib/services/PackageService/{NpmPackageService.js → NpmPackage.service.js} +10 -10
  86. package/lib/services/PackageService/NpmPackage.service.js.map +1 -0
  87. package/lib/services/PackageService/{NpmPackageService.ts → NpmPackage.service.ts} +10 -13
  88. package/lib/services/PackageService/{PackageService.d.ts → Package.service.d.ts} +1 -1
  89. package/lib/services/PackageService/Package.service.d.ts.map +1 -0
  90. package/lib/services/PackageService/{PackageService.js → Package.service.js} +3 -3
  91. package/lib/services/PackageService/Package.service.js.map +1 -0
  92. package/lib/services/PackageService/{PackageService.ts → Package.service.ts} +2 -2
  93. package/lib/services/PackageService/PackageServiceUtils.d.ts +1 -10
  94. package/lib/services/PackageService/PackageServiceUtils.d.ts.map +1 -1
  95. package/lib/services/PackageService/PackageServiceUtils.js +8 -6
  96. package/lib/services/PackageService/PackageServiceUtils.js.map +1 -1
  97. package/lib/services/PackageService/PackageServiceUtils.ts +11 -7
  98. package/lib/services/{StringService.d.ts → String.service.d.ts} +1 -1
  99. package/lib/services/String.service.d.ts.map +1 -0
  100. package/lib/services/{StringService.js → String.service.js} +1 -1
  101. package/lib/services/String.service.js.map +1 -0
  102. package/lib/types/DeepPartial.d.ts +1 -1
  103. package/lib/types/DeepPartial.d.ts.map +1 -1
  104. package/lib/types/DeepPartial.ts +1 -1
  105. package/lib/types/JsonWithVersionProperty.d.ts +7 -0
  106. package/lib/types/JsonWithVersionProperty.d.ts.map +1 -1
  107. package/lib/types/JsonWithVersionProperty.js +10 -1
  108. package/lib/types/JsonWithVersionProperty.js.map +1 -1
  109. package/lib/types/JsonWithVersionProperty.ts +12 -0
  110. package/lib/types/PackageJson.d.ts +22 -0
  111. package/lib/types/PackageJson.d.ts.map +1 -1
  112. package/lib/types/PackageJson.js +15 -1
  113. package/lib/types/PackageJson.js.map +1 -1
  114. package/lib/types/PackageJson.ts +28 -0
  115. package/lib/utils/ConsoleLogger.d.ts +1 -11
  116. package/lib/utils/ConsoleLogger.d.ts.map +1 -1
  117. package/lib/utils/ConsoleLogger.js +8 -8
  118. package/lib/utils/ConsoleLogger.js.map +1 -1
  119. package/lib/utils/ConsoleLogger.ts +8 -8
  120. package/lib/utils/ErrorUtils.d.ts +2 -2
  121. package/lib/utils/ErrorUtils.d.ts.map +1 -1
  122. package/lib/utils/ErrorUtils.js.map +1 -1
  123. package/lib/utils/ErrorUtils.ts +2 -2
  124. package/lib/utils/JsonUtils.d.ts +14 -0
  125. package/lib/utils/JsonUtils.d.ts.map +1 -0
  126. package/lib/utils/JsonUtils.js +20 -0
  127. package/lib/utils/JsonUtils.js.map +1 -0
  128. package/lib/utils/JsonUtils.ts +23 -0
  129. package/lib/utils/TestUtils.d.ts +1 -1
  130. package/lib/utils/TestUtils.d.ts.map +1 -1
  131. package/lib/utils/TestUtils.js +5 -5
  132. package/lib/utils/TestUtils.js.map +1 -1
  133. package/lib/utils/TestUtils.ts +5 -5
  134. package/package.json +2 -2
  135. package/lib/services/ArrayService.d.ts.map +0 -1
  136. package/lib/services/ArrayService.js.map +0 -1
  137. package/lib/services/ChangelogService/ChangelogFileService.d.ts.map +0 -1
  138. package/lib/services/ChangelogService/ChangelogFileService.js.map +0 -1
  139. package/lib/services/ChangelogService/ChangelogService.d.ts.map +0 -1
  140. package/lib/services/ChangelogService/ChangelogService.js.map +0 -1
  141. package/lib/services/ChangelogService/GitTagService.d.ts.map +0 -1
  142. package/lib/services/ChangelogService/GitTagService.js.map +0 -1
  143. package/lib/services/ChangelogService/RepositoryInfoService.d.ts.map +0 -1
  144. package/lib/services/ChangelogService/RepositoryInfoService.js.map +0 -1
  145. package/lib/services/DateService/DateService.d.ts.map +0 -1
  146. package/lib/services/DateService/DateService.js.map +0 -1
  147. package/lib/services/DependencyService.d.ts.map +0 -1
  148. package/lib/services/DependencyService.js.map +0 -1
  149. package/lib/services/FileSystemService/FileSystemService.d.ts.map +0 -1
  150. package/lib/services/FileSystemService/FileSystemService.js.map +0 -1
  151. package/lib/services/FileSystemService/GlobMatchingService.d.ts.map +0 -1
  152. package/lib/services/FileSystemService/GlobMatchingService.js.map +0 -1
  153. package/lib/services/PackageService/JsrPackageService.d.ts +0 -83
  154. package/lib/services/PackageService/JsrPackageService.d.ts.map +0 -1
  155. package/lib/services/PackageService/JsrPackageService.js.map +0 -1
  156. package/lib/services/PackageService/NpmPackageService.d.ts.map +0 -1
  157. package/lib/services/PackageService/NpmPackageService.js.map +0 -1
  158. package/lib/services/PackageService/PackageService.d.ts.map +0 -1
  159. package/lib/services/PackageService/PackageService.js.map +0 -1
  160. package/lib/services/StringService.d.ts.map +0 -1
  161. package/lib/services/StringService.js.map +0 -1
  162. /package/lib/services/{ArrayService.ts → Array.service.ts} +0 -0
  163. /package/lib/services/ChangelogService/{ChangelogFileService.ts → ChangelogFile.service.ts} +0 -0
  164. /package/lib/services/{StringService.ts → String.service.ts} +0 -0
@@ -2,16 +2,19 @@ import { exec, spawn } from 'child_process';
2
2
  import { access, readFile, writeFile } from 'fs/promises';
3
3
  import path from 'path';
4
4
  import { promisify } from 'util';
5
+ import { isJsonWithVersionProperty } from '../../types/JsonWithVersionProperty.js';
6
+ import { isPackageJson } from '../../types/PackageJson.js';
5
7
  import ErrorUtils from '../../utils/ErrorUtils.js';
8
+ import JsonUtils from '../../utils/JsonUtils.js';
6
9
  import { DR } from '../DependencyRegistry.js';
7
- import DependencyService from '../DependencyService.js';
8
- import FileSystemService from '../FileSystemService/FileSystemService.js';
10
+ import DependencyService from '../Dependency.service.js';
11
+ import FileSystemService from '../FileSystemService/FileSystem.service.js';
9
12
  import PackageServiceUtils from './PackageServiceUtils.js';
10
- const execAsync = promisify(exec);
11
13
  /**
12
14
  * Service for handling JSR-specific package operations including validation and publishing.
13
15
  */
14
16
  export default class JsrPackageService {
17
+ static #execAsync = promisify(exec);
15
18
  /**
16
19
  * Validates the current project for publishing to JSR. This will check if the
17
20
  * project has any pending changes first, then update the version of the
@@ -34,9 +37,9 @@ export default class JsrPackageService {
34
37
  if (isAlternativeName) {
35
38
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
36
39
  }
37
- await this.replaceMonorepoImportsWithNpmSpecifiers();
38
- const { version } = await JsrPackageService.updateJsrFromPackageJson();
39
- const successfulDryRun = await JsrPackageService.publishDryRun(packageName, version, allowSlowTypes);
40
+ await this.#replaceMonorepoImportsWithNpmSpecifiers();
41
+ const { version } = await JsrPackageService.#updateJsrFromPackageJson();
42
+ const successfulDryRun = await JsrPackageService.#publishDryRun(packageName, version, allowSlowTypes);
40
43
  await PackageServiceUtils.resetGitChanges();
41
44
  if (!successfulDryRun) {
42
45
  process.exit(1);
@@ -62,9 +65,9 @@ export default class JsrPackageService {
62
65
  if (isAlternativeName) {
63
66
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
64
67
  }
65
- await this.replaceMonorepoImportsWithNpmSpecifiers();
66
- await JsrPackageService.updateJsrFromPackageJson();
67
- const result = await JsrPackageService.publishToJsr();
68
+ await this.#replaceMonorepoImportsWithNpmSpecifiers();
69
+ await JsrPackageService.#updateJsrFromPackageJson();
70
+ const result = await JsrPackageService.#publishToJsr();
68
71
  await PackageServiceUtils.resetGitChanges();
69
72
  if (!result) {
70
73
  process.exit(1);
@@ -78,7 +81,7 @@ export default class JsrPackageService {
78
81
  *
79
82
  * @returns An object containing the package name and version from jsr.json and package.json
80
83
  */
81
- static async updateJsrFromPackageJson() {
84
+ static async #updateJsrFromPackageJson() {
82
85
  const rootDir = process.cwd();
83
86
  const packageJsonPath = path.join(rootDir, 'package.json');
84
87
  const jsrJsonPath = path.join(rootDir, 'jsr.json');
@@ -90,12 +93,12 @@ export default class JsrPackageService {
90
93
  }
91
94
  try {
92
95
  const { packageName, version } = await PackageServiceUtils.getPackageInfo();
93
- const packageJsonData = JSON.parse(await readFile(packageJsonPath, 'utf-8'));
94
- const jsrJsonData = JSON.parse(await readFile(jsrJsonPath, 'utf-8'));
96
+ const packageJsonData = JsonUtils.parseWithGuard(await readFile(packageJsonPath, 'utf-8'), isPackageJson);
97
+ const jsrJsonData = JsonUtils.parseWithGuard(await readFile(jsrJsonPath, 'utf-8'), isJsonWithVersionProperty);
95
98
  // Update JSR version
96
99
  jsrJsonData.version = version;
97
100
  // Resolve wildcard dependencies in package.json for JSR compatibility
98
- await this.resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath);
101
+ await this.#resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath);
99
102
  await writeFile(jsrJsonPath, JSON.stringify(jsrJsonData, null, 2));
100
103
  DR.logger.info('Updated jsr.json from package.json to version ' + version);
101
104
  return {
@@ -119,12 +122,12 @@ export default class JsrPackageService {
119
122
  * @param currentVersion The current version from package.json
120
123
  * @param allowSlowTypes Whether to allow slow types during publishing
121
124
  */
122
- static async publishDryRun(packageName, currentVersion, allowSlowTypes = false) {
125
+ static async #publishDryRun(packageName, currentVersion, allowSlowTypes = false) {
123
126
  // Check for existing versions on JSR first
124
- await JsrPackageService.checkVersionConflicts(packageName, currentVersion);
127
+ await JsrPackageService.#checkVersionConflicts(packageName, currentVersion);
125
128
  DR.logger.info('Running `jsr publish --dry-run`');
126
129
  try {
127
- const { stdout, stderr } = await execAsync('jsr publish --allow-dirty --dry-run' + (allowSlowTypes ? ' --allow-slow-types' : ''));
130
+ const { stdout, stderr } = await JsrPackageService.#execAsync('jsr publish --allow-dirty --dry-run' + (allowSlowTypes ? ' --allow-slow-types' : ''));
128
131
  if (stderr) {
129
132
  DR.logger.info(stderr);
130
133
  }
@@ -141,7 +144,7 @@ export default class JsrPackageService {
141
144
  *
142
145
  * @returns true if the publish was successful, false otherwise.
143
146
  */
144
- static async publishToJsr() {
147
+ static async #publishToJsr() {
145
148
  DR.logger.info('Running `jsr publish`');
146
149
  return new Promise((resolve) => {
147
150
  const child = spawn('jsr publish', ['--allow-dirty', '--allow-slow-types'], {
@@ -166,10 +169,10 @@ export default class JsrPackageService {
166
169
  * @param packageName The package name from jsr.json
167
170
  * @param currentVersion The current version from package.json
168
171
  */
169
- static async checkVersionConflicts(packageName, currentVersion) {
172
+ static async #checkVersionConflicts(packageName, currentVersion) {
170
173
  DR.logger.info(`Checking JSR for existing versions of ${packageName}...`);
171
174
  try {
172
- const { stdout } = await execAsync(`jsr view ${packageName}`);
175
+ const { stdout } = await JsrPackageService.#execAsync(`jsr view ${packageName}`);
173
176
  // Parse the JSR view output to extract the latest version
174
177
  const latestVersionMatch = stdout.match(/latest:\s*([^\s|]+)/);
175
178
  if (latestVersionMatch) {
@@ -204,7 +207,7 @@ export default class JsrPackageService {
204
207
  * at file:///src/services/GitHubService.ts:1:20
205
208
  * ```
206
209
  */
207
- static async replaceMonorepoImportsWithNpmSpecifiers() {
210
+ static async #replaceMonorepoImportsWithNpmSpecifiers() {
208
211
  const rootDir = process.cwd();
209
212
  const srcDir = path.join(rootDir, 'src');
210
213
  try {
@@ -291,7 +294,7 @@ export default class JsrPackageService {
291
294
  * @param packageJsonData The package.json data to modify
292
295
  * @param packageJsonPath The path to the package.json file
293
296
  */
294
- static async resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath) {
297
+ static async #resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath) {
295
298
  try {
296
299
  // Get all packages one directory up to resolve local wildcard dependencies
297
300
  const childPackages = await DependencyService.getChildPackageJsons('../');
@@ -322,4 +325,4 @@ export default class JsrPackageService {
322
325
  }
323
326
  }
324
327
  }
325
- //# sourceMappingURL=JsrPackageService.js.map
328
+ //# sourceMappingURL=JsrPackage.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsrPackage.service.js","sourceRoot":"","sources":["../../../src/services/PackageService/JsrPackage.service.ts"],"names":[],"mappings":"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"}
@@ -2,20 +2,22 @@ import { exec, spawn } from 'child_process';
2
2
  import { access, readFile, writeFile } from 'fs/promises';
3
3
  import path from 'path';
4
4
  import { promisify } from 'util';
5
- import type { JsonWithVersionProperty } from '../../types/JsonWithVersionProperty.js';
5
+ import { isJsonWithVersionProperty } from '../../types/JsonWithVersionProperty.js';
6
6
  import type { PackageJson } from '../../types/PackageJson.js';
7
+ import { isPackageJson } from '../../types/PackageJson.js';
7
8
  import ErrorUtils from '../../utils/ErrorUtils.js';
9
+ import JsonUtils from '../../utils/JsonUtils.js';
8
10
  import { DR } from '../DependencyRegistry.js';
9
- import DependencyService from '../DependencyService.js';
10
- import FileSystemService from '../FileSystemService/FileSystemService.js';
11
+ import DependencyService from '../Dependency.service.js';
12
+ import FileSystemService from '../FileSystemService/FileSystem.service.js';
11
13
  import PackageServiceUtils from './PackageServiceUtils.js';
12
14
 
13
- const execAsync = promisify(exec);
14
-
15
15
  /**
16
16
  * Service for handling JSR-specific package operations including validation and publishing.
17
17
  */
18
18
  export default class JsrPackageService {
19
+ static #execAsync = promisify(exec);
20
+
19
21
  /**
20
22
  * Validates the current project for publishing to JSR. This will check if the
21
23
  * project has any pending changes first, then update the version of the
@@ -48,9 +50,9 @@ export default class JsrPackageService {
48
50
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
49
51
  }
50
52
 
51
- await this.replaceMonorepoImportsWithNpmSpecifiers();
52
- const { version } = await JsrPackageService.updateJsrFromPackageJson();
53
- const successfulDryRun = await JsrPackageService.publishDryRun(
53
+ await this.#replaceMonorepoImportsWithNpmSpecifiers();
54
+ const { version } = await JsrPackageService.#updateJsrFromPackageJson();
55
+ const successfulDryRun = await JsrPackageService.#publishDryRun(
54
56
  packageName,
55
57
  version,
56
58
  allowSlowTypes
@@ -92,9 +94,9 @@ export default class JsrPackageService {
92
94
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
93
95
  }
94
96
 
95
- await this.replaceMonorepoImportsWithNpmSpecifiers();
96
- await JsrPackageService.updateJsrFromPackageJson();
97
- const result = await JsrPackageService.publishToJsr();
97
+ await this.#replaceMonorepoImportsWithNpmSpecifiers();
98
+ await JsrPackageService.#updateJsrFromPackageJson();
99
+ const result = await JsrPackageService.#publishToJsr();
98
100
 
99
101
  await PackageServiceUtils.resetGitChanges();
100
102
 
@@ -112,7 +114,7 @@ export default class JsrPackageService {
112
114
  *
113
115
  * @returns An object containing the package name and version from jsr.json and package.json
114
116
  */
115
- private static async updateJsrFromPackageJson(): Promise<{
117
+ static async #updateJsrFromPackageJson(): Promise<{
116
118
  packageName: string;
117
119
  version: string;
118
120
  }> {
@@ -128,16 +130,20 @@ export default class JsrPackageService {
128
130
 
129
131
  try {
130
132
  const { packageName, version } = await PackageServiceUtils.getPackageInfo();
131
- const packageJsonData = JSON.parse(await readFile(packageJsonPath, 'utf-8')) as PackageJson;
132
- const jsrJsonData = JSON.parse(
133
- await readFile(jsrJsonPath, 'utf-8')
134
- ) as JsonWithVersionProperty;
133
+ const packageJsonData = JsonUtils.parseWithGuard(
134
+ await readFile(packageJsonPath, 'utf-8'),
135
+ isPackageJson
136
+ );
137
+ const jsrJsonData = JsonUtils.parseWithGuard(
138
+ await readFile(jsrJsonPath, 'utf-8'),
139
+ isJsonWithVersionProperty
140
+ );
135
141
 
136
142
  // Update JSR version
137
143
  jsrJsonData.version = version;
138
144
 
139
145
  // Resolve wildcard dependencies in package.json for JSR compatibility
140
- await this.resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath);
146
+ await this.#resolveWildcardDependenciesInPackageJson(packageJsonData, packageJsonPath);
141
147
 
142
148
  await writeFile(jsrJsonPath, JSON.stringify(jsrJsonData, null, 2));
143
149
  DR.logger.info('Updated jsr.json from package.json to version ' + version);
@@ -163,17 +169,17 @@ export default class JsrPackageService {
163
169
  * @param currentVersion The current version from package.json
164
170
  * @param allowSlowTypes Whether to allow slow types during publishing
165
171
  */
166
- private static async publishDryRun(
172
+ static async #publishDryRun(
167
173
  packageName: string,
168
174
  currentVersion: string,
169
175
  allowSlowTypes = false
170
176
  ): Promise<boolean> {
171
177
  // Check for existing versions on JSR first
172
- await JsrPackageService.checkVersionConflicts(packageName, currentVersion);
178
+ await JsrPackageService.#checkVersionConflicts(packageName, currentVersion);
173
179
 
174
180
  DR.logger.info('Running `jsr publish --dry-run`');
175
181
  try {
176
- const { stdout, stderr } = await execAsync(
182
+ const { stdout, stderr } = await JsrPackageService.#execAsync(
177
183
  'jsr publish --allow-dirty --dry-run' + (allowSlowTypes ? ' --allow-slow-types' : '')
178
184
  );
179
185
  if (stderr) {
@@ -192,7 +198,7 @@ export default class JsrPackageService {
192
198
  *
193
199
  * @returns true if the publish was successful, false otherwise.
194
200
  */
195
- private static async publishToJsr(): Promise<boolean> {
201
+ static async #publishToJsr(): Promise<boolean> {
196
202
  DR.logger.info('Running `jsr publish`');
197
203
  return new Promise((resolve) => {
198
204
  const child = spawn('jsr publish', ['--allow-dirty', '--allow-slow-types'], {
@@ -218,14 +224,11 @@ export default class JsrPackageService {
218
224
  * @param packageName The package name from jsr.json
219
225
  * @param currentVersion The current version from package.json
220
226
  */
221
- private static async checkVersionConflicts(
222
- packageName: string,
223
- currentVersion: string
224
- ): Promise<void> {
227
+ static async #checkVersionConflicts(packageName: string, currentVersion: string): Promise<void> {
225
228
  DR.logger.info(`Checking JSR for existing versions of ${packageName}...`);
226
229
 
227
230
  try {
228
- const { stdout } = await execAsync(`jsr view ${packageName}`);
231
+ const { stdout } = await JsrPackageService.#execAsync(`jsr view ${packageName}`);
229
232
 
230
233
  // Parse the JSR view output to extract the latest version
231
234
  const latestVersionMatch = stdout.match(/latest:\s*([^\s|]+)/);
@@ -265,7 +268,7 @@ export default class JsrPackageService {
265
268
  * at file:///src/services/GitHubService.ts:1:20
266
269
  * ```
267
270
  */
268
- private static async replaceMonorepoImportsWithNpmSpecifiers(): Promise<void> {
271
+ static async #replaceMonorepoImportsWithNpmSpecifiers(): Promise<void> {
269
272
  const rootDir = process.cwd();
270
273
  const srcDir = path.join(rootDir, 'src');
271
274
 
@@ -377,7 +380,7 @@ export default class JsrPackageService {
377
380
  * @param packageJsonData The package.json data to modify
378
381
  * @param packageJsonPath The path to the package.json file
379
382
  */
380
- private static async resolveWildcardDependenciesInPackageJson(
383
+ static async #resolveWildcardDependenciesInPackageJson(
381
384
  packageJsonData: PackageJson,
382
385
  packageJsonPath: string
383
386
  ): Promise<void> {
@@ -2,6 +2,7 @@
2
2
  * Service for handling NPM-specific package operations including validation and publishing.
3
3
  */
4
4
  export default class NpmPackageService {
5
+ #private;
5
6
  /**
6
7
  * Validates the current project for publishing to npm. This will run
7
8
  * `npm publish --access public --dry-run` and check for version conflicts
@@ -22,24 +23,5 @@ export default class NpmPackageService {
22
23
  * if the package name appears in unexpected places. Use with caution.
23
24
  */
24
25
  static publish(alternativePackageNames?: string[]): Promise<void>;
25
- /**
26
- * Executes a dry run of npm publishing.
27
- *
28
- * @returns true if the dry run was successful, false otherwise.
29
- */
30
- private static publishDryRun;
31
- /**
32
- * Checks npm registry for package information and performs version conflict checks.
33
- *
34
- * @param packageName The package name from package.json
35
- * @param currentVersion The current version from package.json
36
- */
37
- private static checkVersionConflicts;
38
- /**
39
- * Publishes the current project to npm.
40
- *
41
- * @returns true if the publish was successful, false otherwise.
42
- */
43
- private static publishToNpm;
44
26
  }
45
- //# sourceMappingURL=NpmPackageService.d.ts.map
27
+ //# sourceMappingURL=NpmPackage.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NpmPackage.service.d.ts","sourceRoot":"","sources":["../../../src/services/PackageService/NpmPackage.service.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAiB;;IAGpC;;;;;;;;;OASG;WACU,eAAe,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC/E;;;;;;;OAOG;WACU,OAAO,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CA6GxE"}
@@ -3,11 +3,11 @@ import { promisify } from 'util';
3
3
  import ErrorUtils from '../../utils/ErrorUtils.js';
4
4
  import { DR } from '../DependencyRegistry.js';
5
5
  import PackageServiceUtils from './PackageServiceUtils.js';
6
- const execAsync = promisify(exec);
7
6
  /**
8
7
  * Service for handling NPM-specific package operations including validation and publishing.
9
8
  */
10
9
  export default class NpmPackageService {
10
+ static #execAsync = promisify(exec);
11
11
  /**
12
12
  * Validates the current project for publishing to npm. This will run
13
13
  * `npm publish --access public --dry-run` and check for version conflicts
@@ -28,14 +28,14 @@ export default class NpmPackageService {
28
28
  if (isAlternativeName) {
29
29
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
30
30
  }
31
- const successfulDryRun = await NpmPackageService.publishDryRun();
31
+ const successfulDryRun = await NpmPackageService.#publishDryRun();
32
32
  if (!successfulDryRun) {
33
33
  if (isAlternativeName) {
34
34
  await PackageServiceUtils.resetGitChanges();
35
35
  }
36
36
  process.exit(1);
37
37
  }
38
- await NpmPackageService.checkVersionConflicts(packageName, currentVersion);
38
+ await NpmPackageService.#checkVersionConflicts(packageName, currentVersion);
39
39
  if (isAlternativeName) {
40
40
  await PackageServiceUtils.resetGitChanges();
41
41
  }
@@ -60,7 +60,7 @@ export default class NpmPackageService {
60
60
  if (isAlternativeName) {
61
61
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
62
62
  }
63
- const result = await NpmPackageService.publishToNpm();
63
+ const result = await NpmPackageService.#publishToNpm();
64
64
  if (isAlternativeName) {
65
65
  await PackageServiceUtils.resetGitChanges();
66
66
  }
@@ -75,10 +75,10 @@ export default class NpmPackageService {
75
75
  *
76
76
  * @returns true if the dry run was successful, false otherwise.
77
77
  */
78
- static async publishDryRun() {
78
+ static async #publishDryRun() {
79
79
  DR.logger.info('Running `npm publish --access public --dry-run`');
80
80
  try {
81
- await execAsync('npm publish --access public --dry-run');
81
+ await NpmPackageService.#execAsync('npm publish --access public --dry-run');
82
82
  DR.logger.info('npm dry run completed successfully.');
83
83
  }
84
84
  catch (error) {
@@ -94,10 +94,10 @@ export default class NpmPackageService {
94
94
  * @param packageName The package name from package.json
95
95
  * @param currentVersion The current version from package.json
96
96
  */
97
- static async checkVersionConflicts(packageName, currentVersion) {
97
+ static async #checkVersionConflicts(packageName, currentVersion) {
98
98
  DR.logger.info(`Checking npm registry for existing versions of ${packageName}...`);
99
99
  try {
100
- const { stdout } = await execAsync(`npm view ${packageName}`);
100
+ const { stdout } = await NpmPackageService.#execAsync(`npm view ${packageName}`);
101
101
  // Parse the npm view output to extract the latest version
102
102
  const latestVersionMatch = stdout.match(/latest:\s*([^\s|]+)/);
103
103
  if (latestVersionMatch) {
@@ -125,7 +125,7 @@ export default class NpmPackageService {
125
125
  *
126
126
  * @returns true if the publish was successful, false otherwise.
127
127
  */
128
- static async publishToNpm() {
128
+ static async #publishToNpm() {
129
129
  DR.logger.info('Running `npm publish --access public`');
130
130
  return new Promise((resolve) => {
131
131
  const child = spawn('npm publish', ['--access', 'public'], {
@@ -143,4 +143,4 @@ export default class NpmPackageService {
143
143
  });
144
144
  }
145
145
  }
146
- //# sourceMappingURL=NpmPackageService.js.map
146
+ //# sourceMappingURL=NpmPackage.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NpmPackage.service.js","sourceRoot":"","sources":["../../../src/services/PackageService/NpmPackage.service.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,12 @@ import ErrorUtils from '../../utils/ErrorUtils.js';
4
4
  import { DR } from '../DependencyRegistry.js';
5
5
  import PackageServiceUtils from './PackageServiceUtils.js';
6
6
 
7
- const execAsync = promisify(exec);
8
-
9
7
  /**
10
8
  * Service for handling NPM-specific package operations including validation and publishing.
11
9
  */
12
10
  export default class NpmPackageService {
11
+ static #execAsync = promisify(exec);
12
+
13
13
  /**
14
14
  * Validates the current project for publishing to npm. This will run
15
15
  * `npm publish --access public --dry-run` and check for version conflicts
@@ -37,7 +37,7 @@ export default class NpmPackageService {
37
37
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
38
38
  }
39
39
 
40
- const successfulDryRun = await NpmPackageService.publishDryRun();
40
+ const successfulDryRun = await NpmPackageService.#publishDryRun();
41
41
  if (!successfulDryRun) {
42
42
  if (isAlternativeName) {
43
43
  await PackageServiceUtils.resetGitChanges();
@@ -45,7 +45,7 @@ export default class NpmPackageService {
45
45
  process.exit(1);
46
46
  }
47
47
 
48
- await NpmPackageService.checkVersionConflicts(packageName, currentVersion);
48
+ await NpmPackageService.#checkVersionConflicts(packageName, currentVersion);
49
49
 
50
50
  if (isAlternativeName) {
51
51
  await PackageServiceUtils.resetGitChanges();
@@ -81,7 +81,7 @@ export default class NpmPackageService {
81
81
  await PackageServiceUtils.replacePackageName(originalPackageName, packageName);
82
82
  }
83
83
 
84
- const result = await NpmPackageService.publishToNpm();
84
+ const result = await NpmPackageService.#publishToNpm();
85
85
 
86
86
  if (isAlternativeName) {
87
87
  await PackageServiceUtils.resetGitChanges();
@@ -100,10 +100,10 @@ export default class NpmPackageService {
100
100
  *
101
101
  * @returns true if the dry run was successful, false otherwise.
102
102
  */
103
- private static async publishDryRun(): Promise<boolean> {
103
+ static async #publishDryRun(): Promise<boolean> {
104
104
  DR.logger.info('Running `npm publish --access public --dry-run`');
105
105
  try {
106
- await execAsync('npm publish --access public --dry-run');
106
+ await NpmPackageService.#execAsync('npm publish --access public --dry-run');
107
107
  DR.logger.info('npm dry run completed successfully.');
108
108
  } catch (error) {
109
109
  const errorString = ErrorUtils.getErrorString(error);
@@ -119,14 +119,11 @@ export default class NpmPackageService {
119
119
  * @param packageName The package name from package.json
120
120
  * @param currentVersion The current version from package.json
121
121
  */
122
- private static async checkVersionConflicts(
123
- packageName: string,
124
- currentVersion: string
125
- ): Promise<void> {
122
+ static async #checkVersionConflicts(packageName: string, currentVersion: string): Promise<void> {
126
123
  DR.logger.info(`Checking npm registry for existing versions of ${packageName}...`);
127
124
 
128
125
  try {
129
- const { stdout } = await execAsync(`npm view ${packageName}`);
126
+ const { stdout } = await NpmPackageService.#execAsync(`npm view ${packageName}`);
130
127
 
131
128
  // Parse the npm view output to extract the latest version
132
129
  const latestVersionMatch = stdout.match(/latest:\s*([^\s|]+)/);
@@ -158,7 +155,7 @@ export default class NpmPackageService {
158
155
  *
159
156
  * @returns true if the publish was successful, false otherwise.
160
157
  */
161
- private static async publishToNpm(): Promise<boolean> {
158
+ static async #publishToNpm(): Promise<boolean> {
162
159
  DR.logger.info('Running `npm publish --access public`');
163
160
  return new Promise((resolve) => {
164
161
  const child = spawn('npm publish', ['--access', 'public'], {
@@ -75,4 +75,4 @@ export default class PackageService {
75
75
  */
76
76
  static bumpVersionIfNeededAndInitializeChangelog(versionType?: VersionType, packagePath?: string): Promise<void>;
77
77
  }
78
- //# sourceMappingURL=PackageService.d.ts.map
78
+ //# sourceMappingURL=Package.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Package.service.d.ts","sourceRoot":"","sources":["../../../src/services/PackageService/Package.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAMzD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC;;;;;;;;;;;OAWG;WACU,kBAAkB,CAC7B,uBAAuB,CAAC,EAAE,MAAM,EAAE,EAClC,cAAc,UAAQ,GACrB,OAAO,CAAC,IAAI,CAAC;IAIhB;;;;;;;OAOG;WACU,YAAY,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;;;;;;;;OASG;WACU,kBAAkB,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlF;;;;;;;OAOG;WACU,YAAY,CAAC,uBAAuB,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5E;;;;;;;;;OASG;WACU,qBAAqB,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5F;;;;;OAKG;WACU,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE;;;;;;;OAOG;WACU,yCAAyC,CACpD,WAAW,CAAC,EAAE,WAAW,EACzB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;CAGjB"}
@@ -1,7 +1,7 @@
1
1
  import { VersionType } from '../../types/VersionType.js';
2
2
  import { DR } from '../DependencyRegistry.js';
3
- import JsrPackageService from './JsrPackageService.js';
4
- import NpmPackageService from './NpmPackageService.js';
3
+ import JsrPackageService from './JsrPackage.service.js';
4
+ import NpmPackageService from './NpmPackage.service.js';
5
5
  import PackageServiceUtils from './PackageServiceUtils.js';
6
6
  /**
7
7
  * A service which can be used to assist in publishing or validating packages
@@ -95,4 +95,4 @@ export default class PackageService {
95
95
  return PackageServiceUtils.bumpVersionIfNeededAndInitializeChangelog(versionType, packagePath);
96
96
  }
97
97
  }
98
- //# sourceMappingURL=PackageService.js.map
98
+ //# sourceMappingURL=Package.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Package.service.js","sourceRoot":"","sources":["../../../src/services/PackageService/Package.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAC7B,uBAAkC,EAClC,cAAc,GAAG,KAAK;QAEtB,OAAO,iBAAiB,CAAC,eAAe,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAC;IACpF,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAkC;QAC1D,OAAO,iBAAiB,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,uBAAkC;QAChE,OAAO,iBAAiB,CAAC,eAAe,CAAC,uBAAuB,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAkC;QAC1D,OAAO,iBAAiB,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,cAAsB,EAAE,SAAiB;QAC1E,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,cAAc,SAAS,SAAS,GAAG,CAAC,CAAC;QAExF,MAAM,mBAAmB,CAAC,kBAAkB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAExE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,WAAoB;QACnD,OAAO,mBAAmB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,yCAAyC,CACpD,WAAyB,EACzB,WAAoB;QAEpB,OAAO,mBAAmB,CAAC,yCAAyC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACjG,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { VersionType } from '../../types/VersionType.js';
2
2
  import { DR } from '../DependencyRegistry.js';
3
- import JsrPackageService from './JsrPackageService.js';
4
- import NpmPackageService from './NpmPackageService.js';
3
+ import JsrPackageService from './JsrPackage.service.js';
4
+ import NpmPackageService from './NpmPackage.service.js';
5
5
  import PackageServiceUtils from './PackageServiceUtils.js';
6
6
 
7
7
  /**
@@ -3,6 +3,7 @@ import { VersionType } from '../../types/VersionType.js';
3
3
  * Utility service containing common functionality shared between JSR and NPM package services.
4
4
  */
5
5
  export default class PackageServiceUtils {
6
+ #private;
6
7
  /**
7
8
  * Gets the package name and version from package.json.
8
9
  *
@@ -58,15 +59,5 @@ export default class PackageServiceUtils {
58
59
  * @param packagePath Optional path to the package directory (defaults to current working directory)
59
60
  */
60
61
  static bumpVersionIfNeededAndInitializeChangelog(versionType?: VersionType, packagePath?: string): Promise<void>;
61
- /**
62
- * Checks if a version bump is needed by comparing current version with npm registry
63
- * and considering the requested version type.
64
- *
65
- * @param packageName The package name to check
66
- * @param currentVersion The current version from package.json
67
- * @param versionType The type of version bump requested
68
- * @returns true if a version bump is needed, false otherwise
69
- */
70
- private static checkIfVersionBumpNeeded;
71
62
  }
72
63
  //# sourceMappingURL=PackageServiceUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PackageServiceUtils.d.ts","sourceRoot":"","sources":["../../../src/services/PackageService/PackageServiceUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAUzD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAmB;IACtC;;;;OAIG;WACU,cAAc,IAAI,OAAO,CAAC;QACrC,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAwBF;;;;OAIG;WACU,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlF;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,IAAI;IAqBP;;;;;;OAMG;WACU,kBAAkB,CAC7B,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;WACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAU7C;;;;;OAKG;WACU,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE;;;;;;;;;;OAUG;WACU,yCAAyC,CACpD,WAAW,GAAE,WAA+B,EAC5C,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IA8ChB;;;;;;;;OAQG;mBACkB,wBAAwB;CAmC9C"}
1
+ {"version":3,"file":"PackageServiceUtils.d.ts","sourceRoot":"","sources":["../../../src/services/PackageService/PackageServiceUtils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAWzD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,mBAAmB;;IACtC;;;;OAIG;WACU,cAAc,IAAI,OAAO,CAAC;QACrC,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IA2BF;;;;OAIG;WACU,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUlF;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CACzB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,GACnB,IAAI;IAqBP;;;;;;OAMG;WACU,kBAAkB,CAC7B,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;WACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAU7C;;;;;OAKG;WACU,mBAAmB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrE;;;;;;;;;;OAUG;WACU,yCAAyC,CACpD,WAAW,GAAE,WAA+B,EAC5C,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;CA0FjB"}
@@ -2,13 +2,15 @@ import { exec } from 'child_process';
2
2
  import { access, readFile } from 'fs/promises';
3
3
  import path from 'path';
4
4
  import { promisify } from 'util';
5
+ import { isPackageJson } from '../../types/PackageJson.js';
5
6
  import { VersionType } from '../../types/VersionType.js';
6
7
  import ErrorUtils from '../../utils/ErrorUtils.js';
8
+ import JsonUtils from '../../utils/JsonUtils.js';
7
9
  import ChangelogService from '../ChangelogService/index.js';
8
10
  import { DR } from '../DependencyRegistry.js';
9
- import DependencyService from '../DependencyService.js';
10
- import FileSystemService from '../FileSystemService/FileSystemService.js';
11
- import StringService from '../StringService.js';
11
+ import DependencyService from '../Dependency.service.js';
12
+ import FileSystemService from '../FileSystemService/FileSystem.service.js';
13
+ import StringService from '../String.service.js';
12
14
  const execAsync = promisify(exec);
13
15
  /**
14
16
  * Utility service containing common functionality shared between JSR and NPM package services.
@@ -29,7 +31,7 @@ export default class PackageServiceUtils {
29
31
  throw new Error('No package.json file found in the current directory.');
30
32
  }
31
33
  try {
32
- const packageJsonData = JSON.parse(await readFile(packageJsonPath, 'utf-8'));
34
+ const packageJsonData = JsonUtils.parseWithGuard(await readFile(packageJsonPath, 'utf-8'), isPackageJson);
33
35
  return {
34
36
  packageName: packageJsonData.name,
35
37
  version: packageJsonData.version
@@ -140,7 +142,7 @@ export default class PackageServiceUtils {
140
142
  }
141
143
  DR.logger.info(`Changes detected compared to main branch - proceeding with version check`);
142
144
  // Check if version bump is needed by comparing with npm registry
143
- const needsBump = await PackageServiceUtils.checkIfVersionBumpNeeded(packageName, currentVersion, versionType);
145
+ const needsBump = await PackageServiceUtils.#checkIfVersionBumpNeeded(packageName, currentVersion, versionType);
144
146
  let finalVersion = currentVersion;
145
147
  if (needsBump) {
146
148
  DR.logger.info(`Version bump needed - bumping ${versionType} version`);
@@ -166,7 +168,7 @@ export default class PackageServiceUtils {
166
168
  * @param versionType The type of version bump requested
167
169
  * @returns true if a version bump is needed, false otherwise
168
170
  */
169
- static async checkIfVersionBumpNeeded(packageName, currentVersion, versionType) {
171
+ static async #checkIfVersionBumpNeeded(packageName, currentVersion, versionType) {
170
172
  DR.logger.info(`Checking npm registry for existing versions of ${packageName}...`);
171
173
  let latestVersion = null;
172
174
  try {