@openrewrite/rewrite 8.69.0-20251210-214835 → 8.69.0-20251211-110844
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.
- package/dist/cli/cli-utils.d.ts.map +1 -1
- package/dist/cli/cli-utils.js +6 -0
- package/dist/cli/cli-utils.js.map +1 -1
- package/dist/cli/rewrite.d.ts.map +1 -1
- package/dist/cli/rewrite.js +55 -23
- package/dist/cli/rewrite.js.map +1 -1
- package/dist/data-table.d.ts +23 -0
- package/dist/data-table.d.ts.map +1 -1
- package/dist/data-table.js +125 -6
- package/dist/data-table.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/javascript/node-resolution-result.d.ts +9 -0
- package/dist/javascript/node-resolution-result.d.ts.map +1 -1
- package/dist/javascript/node-resolution-result.js +10 -1
- package/dist/javascript/node-resolution-result.js.map +1 -1
- package/dist/javascript/package-manager.d.ts +76 -89
- package/dist/javascript/package-manager.d.ts.map +1 -1
- package/dist/javascript/package-manager.js +114 -139
- package/dist/javascript/package-manager.js.map +1 -1
- package/dist/javascript/recipes/add-dependency.d.ts +57 -0
- package/dist/javascript/recipes/add-dependency.d.ts.map +1 -0
- package/dist/javascript/recipes/add-dependency.js +404 -0
- package/dist/javascript/recipes/add-dependency.js.map +1 -0
- package/dist/javascript/recipes/index.d.ts +1 -0
- package/dist/javascript/recipes/index.d.ts.map +1 -1
- package/dist/javascript/recipes/index.js +1 -0
- package/dist/javascript/recipes/index.js.map +1 -1
- package/dist/javascript/recipes/upgrade-dependency-version.d.ts +3 -24
- package/dist/javascript/recipes/upgrade-dependency-version.d.ts.map +1 -1
- package/dist/javascript/recipes/upgrade-dependency-version.js +34 -157
- package/dist/javascript/recipes/upgrade-dependency-version.js.map +1 -1
- package/dist/javascript/recipes/upgrade-transitive-dependency-version.d.ts +2 -19
- package/dist/javascript/recipes/upgrade-transitive-dependency-version.d.ts.map +1 -1
- package/dist/javascript/recipes/upgrade-transitive-dependency-version.js +21 -137
- package/dist/javascript/recipes/upgrade-transitive-dependency-version.js.map +1 -1
- package/dist/javascript/search/find-dependency.d.ts.map +1 -1
- package/dist/javascript/search/find-dependency.js +8 -47
- package/dist/javascript/search/find-dependency.js.map +1 -1
- package/dist/json/tree.d.ts +30 -0
- package/dist/json/tree.d.ts.map +1 -1
- package/dist/json/tree.js +113 -0
- package/dist/json/tree.js.map +1 -1
- package/dist/parser.d.ts +9 -0
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +27 -0
- package/dist/parser.js.map +1 -1
- package/dist/reference.d.ts.map +1 -1
- package/dist/reference.js +1 -1
- package/dist/reference.js.map +1 -1
- package/dist/version.txt +1 -1
- package/dist/visitor.js +1 -1
- package/dist/visitor.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/cli-utils.ts +6 -0
- package/src/cli/rewrite.ts +53 -17
- package/src/data-table.ts +83 -2
- package/src/index.ts +2 -1
- package/src/javascript/node-resolution-result.ts +16 -0
- package/src/javascript/package-manager.ts +197 -174
- package/src/javascript/recipes/add-dependency.ts +467 -0
- package/src/javascript/recipes/index.ts +1 -0
- package/src/javascript/recipes/upgrade-dependency-version.ts +52 -199
- package/src/javascript/recipes/upgrade-transitive-dependency-version.ts +39 -165
- package/src/javascript/search/find-dependency.ts +13 -52
- package/src/json/tree.ts +98 -1
- package/src/parser.ts +17 -0
- package/src/reference.ts +1 -1
- package/src/visitor.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../src/javascript/package-manager.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../src/javascript/package-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { ScanningRecipe } from "../../recipe";
|
|
2
|
+
import { ExecutionContext } from "../../execution";
|
|
3
|
+
import { TreeVisitor } from "../../visitor";
|
|
4
|
+
import { DependencyScope, PackageManager } from "../node-resolution-result";
|
|
5
|
+
import { DependencyRecipeAccumulator } from "../package-manager";
|
|
6
|
+
/**
|
|
7
|
+
* Information about a project that needs updating
|
|
8
|
+
*/
|
|
9
|
+
interface ProjectUpdateInfo {
|
|
10
|
+
/** Absolute path to the project directory */
|
|
11
|
+
projectDir: string;
|
|
12
|
+
/** Relative path to package.json (from source root) */
|
|
13
|
+
packageJsonPath: string;
|
|
14
|
+
/** Original package.json content */
|
|
15
|
+
originalPackageJson: string;
|
|
16
|
+
/** The scope where the dependency should be added */
|
|
17
|
+
dependencyScope: DependencyScope;
|
|
18
|
+
/** Version constraint to apply */
|
|
19
|
+
newVersion: string;
|
|
20
|
+
/** The package manager used by this project */
|
|
21
|
+
packageManager: PackageManager;
|
|
22
|
+
}
|
|
23
|
+
type Accumulator = DependencyRecipeAccumulator<ProjectUpdateInfo>;
|
|
24
|
+
/**
|
|
25
|
+
* Adds a new dependency to package.json and updates the lock file.
|
|
26
|
+
*
|
|
27
|
+
* This recipe:
|
|
28
|
+
* 1. Finds package.json files that don't already have the specified dependency
|
|
29
|
+
* 2. Adds the dependency to the specified scope (defaults to 'dependencies')
|
|
30
|
+
* 3. Runs the package manager to update the lock file
|
|
31
|
+
* 4. Updates the NodeResolutionResult marker with new dependency info
|
|
32
|
+
*
|
|
33
|
+
* If the dependency already exists in any scope, no changes are made.
|
|
34
|
+
* This matches the behavior of org.openrewrite.maven.AddDependency.
|
|
35
|
+
*/
|
|
36
|
+
export declare class AddDependency extends ScanningRecipe<Accumulator> {
|
|
37
|
+
readonly name = "org.openrewrite.javascript.dependencies.add-dependency";
|
|
38
|
+
readonly displayName = "Add npm dependency";
|
|
39
|
+
readonly description = "Adds a new dependency to `package.json` and updates the lock file by running the package manager.";
|
|
40
|
+
packageName: string;
|
|
41
|
+
version: string;
|
|
42
|
+
scope?: DependencyScope;
|
|
43
|
+
initialValue(_ctx: ExecutionContext): Accumulator;
|
|
44
|
+
private getTargetScope;
|
|
45
|
+
scanner(acc: Accumulator): Promise<TreeVisitor<any, ExecutionContext>>;
|
|
46
|
+
editorWithData(acc: Accumulator): Promise<TreeVisitor<any, ExecutionContext>>;
|
|
47
|
+
/**
|
|
48
|
+
* Runs the package manager in a temporary directory to update the lock file.
|
|
49
|
+
*/
|
|
50
|
+
private runPackageManagerInstall;
|
|
51
|
+
/**
|
|
52
|
+
* Creates a modified package.json with the new dependency added.
|
|
53
|
+
*/
|
|
54
|
+
private createModifiedPackageJson;
|
|
55
|
+
}
|
|
56
|
+
export {};
|
|
57
|
+
//# sourceMappingURL=add-dependency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-dependency.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/add-dependency.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAS,cAAc,EAAC,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,EAEH,eAAe,EAEf,cAAc,EACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAEH,2BAA2B,EAM9B,MAAM,oBAAoB,CAAC;AAI5B;;GAEG;AACH,UAAU,iBAAiB;IACvB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qDAAqD;IACrD,eAAe,EAAE,eAAe,CAAC;IACjC,kCAAkC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,cAAc,EAAE,cAAc,CAAC;CAClC;AAED,KAAK,WAAW,GAAG,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;AAElE;;;;;;;;;;;GAWG;AACH,qBAAa,aAAc,SAAQ,cAAc,CAAC,WAAW,CAAC;IAC1D,QAAQ,CAAC,IAAI,4DAA4D;IACzE,QAAQ,CAAC,WAAW,wBAAwB;IAC5C,QAAQ,CAAC,WAAW,uGAAuG;IAO3H,WAAW,EAAG,MAAM,CAAC;IAOrB,OAAO,EAAG,MAAM,CAAC;IAQjB,KAAK,CAAC,EAAE,eAAe,CAAC;IAExB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,WAAW;IAIjD,OAAO,CAAC,cAAc;IAIhB,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IA8CtE,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAoDnF;;OAEG;YACW,wBAAwB;IAoBtC;;OAEG;IACH,OAAO,CAAC,yBAAyB;CAcpC"}
|
|
@@ -0,0 +1,404 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2025 the original author or authors.
|
|
4
|
+
* <p>
|
|
5
|
+
* Licensed under the Moderne Source Available License (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
* <p>
|
|
9
|
+
* https://docs.moderne.io/licensing/moderne-source-available-license
|
|
10
|
+
* <p>
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
34
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
35
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
36
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
37
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
38
|
+
};
|
|
39
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
40
|
+
var ownKeys = function(o) {
|
|
41
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
42
|
+
var ar = [];
|
|
43
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
44
|
+
return ar;
|
|
45
|
+
};
|
|
46
|
+
return ownKeys(o);
|
|
47
|
+
};
|
|
48
|
+
return function (mod) {
|
|
49
|
+
if (mod && mod.__esModule) return mod;
|
|
50
|
+
var result = {};
|
|
51
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
52
|
+
__setModuleDefault(result, mod);
|
|
53
|
+
return result;
|
|
54
|
+
};
|
|
55
|
+
})();
|
|
56
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
57
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
58
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
59
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
60
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
61
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
62
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
66
|
+
exports.AddDependency = void 0;
|
|
67
|
+
const recipe_1 = require("../../recipe");
|
|
68
|
+
const json_1 = require("../../json");
|
|
69
|
+
const node_resolution_result_1 = require("../node-resolution-result");
|
|
70
|
+
const markers_1 = require("../../markers");
|
|
71
|
+
const print_1 = require("../../print");
|
|
72
|
+
const package_manager_1 = require("../package-manager");
|
|
73
|
+
const uuid_1 = require("../../uuid");
|
|
74
|
+
const path = __importStar(require("path"));
|
|
75
|
+
/**
|
|
76
|
+
* Adds a new dependency to package.json and updates the lock file.
|
|
77
|
+
*
|
|
78
|
+
* This recipe:
|
|
79
|
+
* 1. Finds package.json files that don't already have the specified dependency
|
|
80
|
+
* 2. Adds the dependency to the specified scope (defaults to 'dependencies')
|
|
81
|
+
* 3. Runs the package manager to update the lock file
|
|
82
|
+
* 4. Updates the NodeResolutionResult marker with new dependency info
|
|
83
|
+
*
|
|
84
|
+
* If the dependency already exists in any scope, no changes are made.
|
|
85
|
+
* This matches the behavior of org.openrewrite.maven.AddDependency.
|
|
86
|
+
*/
|
|
87
|
+
class AddDependency extends recipe_1.ScanningRecipe {
|
|
88
|
+
constructor() {
|
|
89
|
+
super(...arguments);
|
|
90
|
+
this.name = "org.openrewrite.javascript.dependencies.add-dependency";
|
|
91
|
+
this.displayName = "Add npm dependency";
|
|
92
|
+
this.description = "Adds a new dependency to `package.json` and updates the lock file by running the package manager.";
|
|
93
|
+
}
|
|
94
|
+
initialValue(_ctx) {
|
|
95
|
+
return (0, package_manager_1.createDependencyRecipeAccumulator)();
|
|
96
|
+
}
|
|
97
|
+
getTargetScope() {
|
|
98
|
+
var _a;
|
|
99
|
+
return (_a = this.scope) !== null && _a !== void 0 ? _a : 'dependencies';
|
|
100
|
+
}
|
|
101
|
+
scanner(acc) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
const recipe = this;
|
|
104
|
+
return new class extends json_1.JsonVisitor {
|
|
105
|
+
visitDocument(doc, _ctx) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
var _a;
|
|
108
|
+
// Only process package.json files
|
|
109
|
+
if (!doc.sourcePath.endsWith('package.json')) {
|
|
110
|
+
return doc;
|
|
111
|
+
}
|
|
112
|
+
const marker = (0, node_resolution_result_1.findNodeResolutionResult)(doc);
|
|
113
|
+
if (!marker) {
|
|
114
|
+
return doc;
|
|
115
|
+
}
|
|
116
|
+
// Check if dependency already exists in any scope
|
|
117
|
+
for (const scope of node_resolution_result_1.allDependencyScopes) {
|
|
118
|
+
const deps = marker[scope];
|
|
119
|
+
if (deps === null || deps === void 0 ? void 0 : deps.some(d => d.name === recipe.packageName)) {
|
|
120
|
+
// Dependency already exists, don't add again
|
|
121
|
+
return doc;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Get the project directory and package manager
|
|
125
|
+
const projectDir = path.dirname(path.resolve(doc.sourcePath));
|
|
126
|
+
const pm = (_a = marker.packageManager) !== null && _a !== void 0 ? _a : node_resolution_result_1.PackageManager.Npm;
|
|
127
|
+
acc.projectsToUpdate.set(doc.sourcePath, {
|
|
128
|
+
projectDir,
|
|
129
|
+
packageJsonPath: doc.sourcePath,
|
|
130
|
+
originalPackageJson: yield this.printDocument(doc),
|
|
131
|
+
dependencyScope: recipe.getTargetScope(),
|
|
132
|
+
newVersion: recipe.version,
|
|
133
|
+
packageManager: pm
|
|
134
|
+
});
|
|
135
|
+
return doc;
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
printDocument(doc) {
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
return print_1.TreePrinters.print(doc);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
editorWithData(acc) {
|
|
147
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
+
const recipe = this;
|
|
149
|
+
return new class extends json_1.JsonVisitor {
|
|
150
|
+
visitDocument(doc, ctx) {
|
|
151
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
152
|
+
const sourcePath = doc.sourcePath;
|
|
153
|
+
// Handle package.json files
|
|
154
|
+
if (sourcePath.endsWith('package.json')) {
|
|
155
|
+
const updateInfo = acc.projectsToUpdate.get(sourcePath);
|
|
156
|
+
if (!updateInfo) {
|
|
157
|
+
return doc; // This package.json doesn't need updating
|
|
158
|
+
}
|
|
159
|
+
// Run package manager install if needed, check for failure
|
|
160
|
+
const failureMessage = yield (0, package_manager_1.runInstallIfNeeded)(sourcePath, acc, () => recipe.runPackageManagerInstall(acc, updateInfo, ctx));
|
|
161
|
+
if (failureMessage) {
|
|
162
|
+
return (0, markers_1.markupWarn)(doc, `Failed to add ${recipe.packageName} to ${recipe.version}`, failureMessage);
|
|
163
|
+
}
|
|
164
|
+
// Add the dependency to the JSON AST (preserves formatting)
|
|
165
|
+
const visitor = new AddDependencyVisitor(recipe.packageName, recipe.version, updateInfo.dependencyScope);
|
|
166
|
+
const modifiedDoc = yield visitor.visit(doc, undefined);
|
|
167
|
+
// Update the NodeResolutionResult marker
|
|
168
|
+
return (0, package_manager_1.updateNodeResolutionMarker)(modifiedDoc, updateInfo, acc);
|
|
169
|
+
}
|
|
170
|
+
// Handle lock files for all package managers
|
|
171
|
+
const updatedLockContent = (0, package_manager_1.getUpdatedLockFileContent)(sourcePath, acc);
|
|
172
|
+
if (updatedLockContent) {
|
|
173
|
+
return yield new json_1.JsonParser({}).parseOne({
|
|
174
|
+
text: updatedLockContent,
|
|
175
|
+
sourcePath: doc.sourcePath
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
return doc;
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Runs the package manager in a temporary directory to update the lock file.
|
|
186
|
+
*/
|
|
187
|
+
runPackageManagerInstall(acc, updateInfo, _ctx) {
|
|
188
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
189
|
+
// Create modified package.json with the new dependency
|
|
190
|
+
const modifiedPackageJson = this.createModifiedPackageJson(updateInfo.originalPackageJson, updateInfo.dependencyScope);
|
|
191
|
+
const result = yield (0, package_manager_1.runInstallInTempDir)(updateInfo.projectDir, updateInfo.packageManager, modifiedPackageJson);
|
|
192
|
+
(0, package_manager_1.storeInstallResult)(result, acc, updateInfo, modifiedPackageJson);
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Creates a modified package.json with the new dependency added.
|
|
197
|
+
*/
|
|
198
|
+
createModifiedPackageJson(originalContent, scope) {
|
|
199
|
+
const packageJson = JSON.parse(originalContent);
|
|
200
|
+
if (!packageJson[scope]) {
|
|
201
|
+
packageJson[scope] = {};
|
|
202
|
+
}
|
|
203
|
+
packageJson[scope][this.packageName] = this.version;
|
|
204
|
+
return JSON.stringify(packageJson, null, 2);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
exports.AddDependency = AddDependency;
|
|
208
|
+
__decorate([
|
|
209
|
+
(0, recipe_1.Option)({
|
|
210
|
+
displayName: "Package name",
|
|
211
|
+
description: "The name of the npm package to add (e.g., `lodash`, `@types/node`)",
|
|
212
|
+
example: "lodash"
|
|
213
|
+
})
|
|
214
|
+
], AddDependency.prototype, "packageName", void 0);
|
|
215
|
+
__decorate([
|
|
216
|
+
(0, recipe_1.Option)({
|
|
217
|
+
displayName: "Version",
|
|
218
|
+
description: "The version constraint to set (e.g., `^5.0.0`, `~2.1.0`, `3.0.0`)",
|
|
219
|
+
example: "^5.0.0"
|
|
220
|
+
})
|
|
221
|
+
], AddDependency.prototype, "version", void 0);
|
|
222
|
+
__decorate([
|
|
223
|
+
(0, recipe_1.Option)({
|
|
224
|
+
displayName: "Scope",
|
|
225
|
+
description: "The dependency scope: `dependencies`, `devDependencies`, `peerDependencies`, or `optionalDependencies`",
|
|
226
|
+
example: "dependencies",
|
|
227
|
+
required: false
|
|
228
|
+
})
|
|
229
|
+
], AddDependency.prototype, "scope", void 0);
|
|
230
|
+
/**
|
|
231
|
+
* Visitor that adds a new dependency to a specific scope in package.json.
|
|
232
|
+
* If the scope doesn't exist, it creates it.
|
|
233
|
+
*/
|
|
234
|
+
class AddDependencyVisitor extends json_1.JsonVisitor {
|
|
235
|
+
constructor(packageName, version, targetScope) {
|
|
236
|
+
super();
|
|
237
|
+
this.scopeFound = false;
|
|
238
|
+
this.dependencyAdded = false;
|
|
239
|
+
this.baseIndent = ' '; // Will be detected from document
|
|
240
|
+
this.packageName = packageName;
|
|
241
|
+
this.version = version;
|
|
242
|
+
this.targetScope = targetScope;
|
|
243
|
+
}
|
|
244
|
+
visitDocument(doc, p) {
|
|
245
|
+
const _super = Object.create(null, {
|
|
246
|
+
visitDocument: { get: () => super.visitDocument }
|
|
247
|
+
});
|
|
248
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
249
|
+
// Detect indentation from the document
|
|
250
|
+
this.baseIndent = (0, json_1.detectIndent)(doc);
|
|
251
|
+
const result = yield _super.visitDocument.call(this, doc, p);
|
|
252
|
+
// If scope wasn't found, we need to add it to the document
|
|
253
|
+
if (!this.scopeFound && !this.dependencyAdded) {
|
|
254
|
+
return this.addScopeToDocument(result);
|
|
255
|
+
}
|
|
256
|
+
return result;
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
visitMember(member, p) {
|
|
260
|
+
const _super = Object.create(null, {
|
|
261
|
+
visitMember: { get: () => super.visitMember }
|
|
262
|
+
});
|
|
263
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
264
|
+
const keyName = (0, json_1.getMemberKeyName)(member);
|
|
265
|
+
if (keyName === this.targetScope) {
|
|
266
|
+
this.scopeFound = true;
|
|
267
|
+
return this.addDependencyToScope(member);
|
|
268
|
+
}
|
|
269
|
+
return _super.visitMember.call(this, member, p);
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Adds the dependency to an existing scope object.
|
|
274
|
+
*/
|
|
275
|
+
addDependencyToScope(scopeMember) {
|
|
276
|
+
const value = scopeMember.value;
|
|
277
|
+
if (!(0, json_1.isObject)(value)) {
|
|
278
|
+
return scopeMember;
|
|
279
|
+
}
|
|
280
|
+
const members = [...(value.members || [])];
|
|
281
|
+
// Determine the closing whitespace (goes before closing brace after last element)
|
|
282
|
+
let closingWhitespace = '\n ';
|
|
283
|
+
if (members.length > 0) {
|
|
284
|
+
const lastMember = members[members.length - 1];
|
|
285
|
+
closingWhitespace = lastMember.after.whitespace;
|
|
286
|
+
// Update the last member's after to be empty (comma will be added by printer)
|
|
287
|
+
members[members.length - 1] = Object.assign(Object.assign({}, lastMember), { after: (0, json_1.space)('') });
|
|
288
|
+
}
|
|
289
|
+
const newMember = this.createDependencyMemberWithAfter(closingWhitespace);
|
|
290
|
+
this.dependencyAdded = true;
|
|
291
|
+
members.push(newMember);
|
|
292
|
+
return Object.assign(Object.assign({}, scopeMember), { value: Object.assign(Object.assign({}, value), { members }) });
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Creates a new dependency member node.
|
|
296
|
+
*/
|
|
297
|
+
createDependencyMemberWithAfter(afterWhitespace) {
|
|
298
|
+
// Dependencies inside a scope are indented twice (e.g., 8 spaces if base is 4)
|
|
299
|
+
const depIndent = this.baseIndent + this.baseIndent;
|
|
300
|
+
const keyLiteral = {
|
|
301
|
+
kind: json_1.Json.Kind.Literal,
|
|
302
|
+
id: (0, uuid_1.randomId)(),
|
|
303
|
+
prefix: (0, json_1.space)('\n' + depIndent),
|
|
304
|
+
markers: markers_1.emptyMarkers,
|
|
305
|
+
source: `"${this.packageName}"`,
|
|
306
|
+
value: this.packageName
|
|
307
|
+
};
|
|
308
|
+
const valueLiteral = {
|
|
309
|
+
kind: json_1.Json.Kind.Literal,
|
|
310
|
+
id: (0, uuid_1.randomId)(),
|
|
311
|
+
prefix: (0, json_1.space)(' '),
|
|
312
|
+
markers: markers_1.emptyMarkers,
|
|
313
|
+
source: `"${this.version}"`,
|
|
314
|
+
value: this.version
|
|
315
|
+
};
|
|
316
|
+
const member = {
|
|
317
|
+
kind: json_1.Json.Kind.Member,
|
|
318
|
+
id: (0, uuid_1.randomId)(),
|
|
319
|
+
prefix: (0, json_1.space)(''),
|
|
320
|
+
markers: markers_1.emptyMarkers,
|
|
321
|
+
key: (0, json_1.rightPadded)(keyLiteral, (0, json_1.space)('')),
|
|
322
|
+
value: valueLiteral
|
|
323
|
+
};
|
|
324
|
+
return (0, json_1.rightPadded)(member, (0, json_1.space)(afterWhitespace));
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Adds a new scope section to the document when the target scope doesn't exist.
|
|
328
|
+
*/
|
|
329
|
+
addScopeToDocument(doc) {
|
|
330
|
+
const docValue = doc.value;
|
|
331
|
+
if (!(0, json_1.isObject)(docValue)) {
|
|
332
|
+
return doc;
|
|
333
|
+
}
|
|
334
|
+
const members = [...(docValue.members || [])];
|
|
335
|
+
// Get the trailing whitespace from the last member
|
|
336
|
+
let closingWhitespace = '\n';
|
|
337
|
+
if (members.length > 0) {
|
|
338
|
+
const lastMember = members[members.length - 1];
|
|
339
|
+
closingWhitespace = lastMember.after.whitespace;
|
|
340
|
+
// Update the last member's after to be empty (comma will be added by printer)
|
|
341
|
+
members[members.length - 1] = Object.assign(Object.assign({}, lastMember), { after: (0, json_1.space)('') });
|
|
342
|
+
}
|
|
343
|
+
const scopeMember = this.createScopeMemberWithAfter(closingWhitespace);
|
|
344
|
+
this.dependencyAdded = true;
|
|
345
|
+
members.push(scopeMember);
|
|
346
|
+
return Object.assign(Object.assign({}, doc), { value: Object.assign(Object.assign({}, docValue), { members }) });
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Creates a new scope member with the dependency inside.
|
|
350
|
+
*/
|
|
351
|
+
createScopeMemberWithAfter(afterWhitespace) {
|
|
352
|
+
// Dependencies inside a scope are indented twice (e.g., 8 spaces if base is 4)
|
|
353
|
+
const depIndent = this.baseIndent + this.baseIndent;
|
|
354
|
+
const keyLiteral = {
|
|
355
|
+
kind: json_1.Json.Kind.Literal,
|
|
356
|
+
id: (0, uuid_1.randomId)(),
|
|
357
|
+
prefix: (0, json_1.space)('\n' + this.baseIndent),
|
|
358
|
+
markers: markers_1.emptyMarkers,
|
|
359
|
+
source: `"${this.targetScope}"`,
|
|
360
|
+
value: this.targetScope
|
|
361
|
+
};
|
|
362
|
+
const depKeyLiteral = {
|
|
363
|
+
kind: json_1.Json.Kind.Literal,
|
|
364
|
+
id: (0, uuid_1.randomId)(),
|
|
365
|
+
prefix: (0, json_1.space)('\n' + depIndent),
|
|
366
|
+
markers: markers_1.emptyMarkers,
|
|
367
|
+
source: `"${this.packageName}"`,
|
|
368
|
+
value: this.packageName
|
|
369
|
+
};
|
|
370
|
+
const depValueLiteral = {
|
|
371
|
+
kind: json_1.Json.Kind.Literal,
|
|
372
|
+
id: (0, uuid_1.randomId)(),
|
|
373
|
+
prefix: (0, json_1.space)(' '),
|
|
374
|
+
markers: markers_1.emptyMarkers,
|
|
375
|
+
source: `"${this.version}"`,
|
|
376
|
+
value: this.version
|
|
377
|
+
};
|
|
378
|
+
const depMember = {
|
|
379
|
+
kind: json_1.Json.Kind.Member,
|
|
380
|
+
id: (0, uuid_1.randomId)(),
|
|
381
|
+
prefix: (0, json_1.space)(''),
|
|
382
|
+
markers: markers_1.emptyMarkers,
|
|
383
|
+
key: (0, json_1.rightPadded)(depKeyLiteral, (0, json_1.space)('')),
|
|
384
|
+
value: depValueLiteral
|
|
385
|
+
};
|
|
386
|
+
const scopeObject = {
|
|
387
|
+
kind: json_1.Json.Kind.Object,
|
|
388
|
+
id: (0, uuid_1.randomId)(),
|
|
389
|
+
prefix: (0, json_1.space)(' '),
|
|
390
|
+
markers: markers_1.emptyMarkers,
|
|
391
|
+
members: [(0, json_1.rightPadded)(depMember, (0, json_1.space)('\n' + this.baseIndent))]
|
|
392
|
+
};
|
|
393
|
+
const scopeMemberNode = {
|
|
394
|
+
kind: json_1.Json.Kind.Member,
|
|
395
|
+
id: (0, uuid_1.randomId)(),
|
|
396
|
+
prefix: (0, json_1.space)(''),
|
|
397
|
+
markers: markers_1.emptyMarkers,
|
|
398
|
+
key: (0, json_1.rightPadded)(keyLiteral, (0, json_1.space)('')),
|
|
399
|
+
value: scopeObject
|
|
400
|
+
};
|
|
401
|
+
return (0, json_1.rightPadded)(scopeMemberNode, (0, json_1.space)(afterWhitespace));
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
//# sourceMappingURL=add-dependency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-dependency.js","sourceRoot":"","sources":["../../../src/javascript/recipes/add-dependency.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":"AAgBA,cAAc,uCAAuC,CAAC;AACtD,cAAc,eAAe,CAAC;AAC9B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AACxD,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":"AAgBA,cAAc,kBAAkB,CAAC;AACjC,cAAc,uCAAuC,CAAC;AACtD,cAAc,eAAe,CAAC;AAC9B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yCAAyC,CAAC;AACxD,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -29,6 +29,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
29
29
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
30
30
|
};
|
|
31
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
__exportStar(require("./add-dependency"), exports);
|
|
32
33
|
__exportStar(require("./async-callback-in-sync-array-method"), exports);
|
|
33
34
|
__exportStar(require("./auto-format"), exports);
|
|
34
35
|
__exportStar(require("./upgrade-dependency-version"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;AAEH,wEAAsD;AACtD,gDAA8B;AAC9B,+DAA6C;AAC7C,0EAAwD;AACxD,kDAAgC;AAChC,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/recipes/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;AAEH,mDAAiC;AACjC,wEAAsD;AACtD,gDAA8B;AAC9B,+DAA6C;AAC7C,0EAAwD;AACxD,kDAAgC;AAChC,kDAAgC"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { ScanningRecipe } from "../../recipe";
|
|
2
2
|
import { ExecutionContext } from "../../execution";
|
|
3
3
|
import { TreeVisitor } from "../../visitor";
|
|
4
|
-
import { PackageManager } from "../node-resolution-result";
|
|
5
|
-
|
|
6
|
-
* Represents a dependency scope in package.json
|
|
7
|
-
*/
|
|
8
|
-
type DependencyScope = 'dependencies' | 'devDependencies' | 'peerDependencies' | 'optionalDependencies';
|
|
4
|
+
import { DependencyScope, PackageManager } from "../node-resolution-result";
|
|
5
|
+
import { DependencyRecipeAccumulator } from "../package-manager";
|
|
9
6
|
/**
|
|
10
7
|
* Information about a project that needs updating
|
|
11
8
|
*/
|
|
@@ -30,21 +27,7 @@ interface ProjectUpdateInfo {
|
|
|
30
27
|
*/
|
|
31
28
|
skipInstall: boolean;
|
|
32
29
|
}
|
|
33
|
-
|
|
34
|
-
* Accumulator for tracking state across scanning and editing phases
|
|
35
|
-
*/
|
|
36
|
-
interface Accumulator {
|
|
37
|
-
/** Projects that need updating: packageJsonPath -> update info */
|
|
38
|
-
projectsToUpdate: Map<string, ProjectUpdateInfo>;
|
|
39
|
-
/** After running package manager, store the updated lock file content */
|
|
40
|
-
updatedLockFiles: Map<string, string>;
|
|
41
|
-
/** Updated package.json content (after npm install may have modified it) */
|
|
42
|
-
updatedPackageJsons: Map<string, string>;
|
|
43
|
-
/** Track which projects have been processed (npm install has run) */
|
|
44
|
-
processedProjects: Set<string>;
|
|
45
|
-
/** Track projects where npm install failed: packageJsonPath -> error message */
|
|
46
|
-
failedProjects: Map<string, string>;
|
|
47
|
-
}
|
|
30
|
+
type Accumulator = DependencyRecipeAccumulator<ProjectUpdateInfo>;
|
|
48
31
|
/**
|
|
49
32
|
* Upgrades the version of a direct dependency in package.json and updates the lock file.
|
|
50
33
|
*
|
|
@@ -91,10 +74,6 @@ export declare class UpgradeDependencyVersion extends ScanningRecipe<Accumulator
|
|
|
91
74
|
* Used for the temp directory to validate the version exists.
|
|
92
75
|
*/
|
|
93
76
|
private createModifiedPackageJson;
|
|
94
|
-
/**
|
|
95
|
-
* Updates the NodeResolutionResult marker with new dependency information.
|
|
96
|
-
*/
|
|
97
|
-
private updateMarker;
|
|
98
77
|
/**
|
|
99
78
|
* Updates just the versionConstraint in the marker for the target dependency.
|
|
100
79
|
* Used when skipInstall is true - the resolved version is unchanged.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upgrade-dependency-version.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/upgrade-dependency-version.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAS,cAAc,EAAC,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,
|
|
1
|
+
{"version":3,"file":"upgrade-dependency-version.d.ts","sourceRoot":"","sources":["../../../src/javascript/recipes/upgrade-dependency-version.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAS,cAAc,EAAC,MAAM,cAAc,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAE1C,OAAO,EAEH,eAAe,EAEf,cAAc,EACjB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EAEH,2BAA2B,EAM9B,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,UAAU,iBAAiB;IACvB,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,+CAA+C;IAC/C,eAAe,EAAE,eAAe,CAAC;IACjC,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,cAAc,EAAE,cAAc,CAAC;IAC/B;;;OAGG;IACH,WAAW,EAAE,OAAO,CAAC;CACxB;AAED,KAAK,WAAW,GAAG,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;AAElE;;;;;;;;;;;;;GAaG;AACH,qBAAa,wBAAyB,SAAQ,cAAc,CAAC,WAAW,CAAC;IACrE,QAAQ,CAAC,IAAI,wEAAwE;IACrF,QAAQ,CAAC,WAAW,oCAAoC;IACxD,QAAQ,CAAC,WAAW,6HAA6H;IAOjJ,WAAW,EAAG,MAAM,CAAC;IAOrB,UAAU,EAAG,MAAM,CAAC;IAEpB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,WAAW;IAIjD;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAqB5D,OAAO,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAwEtE,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IA2DnF;;;OAGG;YACW,wBAAwB;IAqBtC;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAcjC;;;OAGG;IACH,OAAO,CAAC,6BAA6B;CA2BxC"}
|