@openrewrite/rewrite 8.69.0-20251207-135957 → 8.69.0-20251207-142820

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.
@@ -224,12 +224,14 @@ function main() {
224
224
  // Handle special built-in recipes
225
225
  let recipe;
226
226
  const isValidateParsing = recipeArg === 'validate-parsing';
227
- if (!isValidateParsing) {
227
+ const isBuiltinRecipe = recipeArg.startsWith('builtin:');
228
+ if (!isValidateParsing && !isBuiltinRecipe) {
228
229
  // Parse recipe specification
229
230
  const recipeSpec = (0, cli_utils_1.parseRecipeSpec)(recipeArg);
230
231
  if (!recipeSpec) {
231
232
  console.error(`Invalid recipe format: ${recipeArg}`);
232
233
  console.error('Expected format: "package:recipe" (e.g., "@openrewrite/recipes-nodejs:replace-deprecated-slice")');
234
+ console.error('Or use "builtin:recipe" for built-in recipes (e.g., "builtin:prefer-optional-chain")');
233
235
  console.error('Or use "validate-parsing" to check for parse errors and idempotence.');
234
236
  process.exit(1);
235
237
  }
@@ -269,6 +271,27 @@ function main() {
269
271
  console.log(`Running recipe: ${recipe.name}`);
270
272
  }
271
273
  }
274
+ else if (isBuiltinRecipe) {
275
+ // Handle builtin: prefix for built-in recipes
276
+ const recipeName = recipeArg.substring('builtin:'.length);
277
+ // Parse recipe options
278
+ const recipeOptions = (0, cli_utils_1.parseRecipeOptions)(opts.option);
279
+ if (opts.verbose && Object.keys(recipeOptions).length > 0) {
280
+ console.log(`Options: ${JSON.stringify(recipeOptions)}`);
281
+ }
282
+ // Set up recipe registry with only built-in recipes
283
+ const registry = new recipe_1.RecipeRegistry();
284
+ yield (0, index_1.activate)(registry);
285
+ // Find the recipe
286
+ const foundRecipe = (0, cli_utils_1.findRecipe)(registry, recipeName, recipeOptions);
287
+ if (!foundRecipe) {
288
+ process.exit(1);
289
+ }
290
+ recipe = foundRecipe;
291
+ if (opts.verbose) {
292
+ console.log(`Running built-in recipe: ${recipe.name}`);
293
+ }
294
+ }
272
295
  const spinner = new Spinner();
273
296
  // Determine paths to process and project root
274
297
  let targetPaths;
@@ -1 +1 @@
1
- {"version":3,"file":"rewrite.js","sourceRoot":"","sources":["../../src/cli/rewrite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rewrite.js","sourceRoot":"","sources":["../../src/cli/rewrite.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAExC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AAGtB,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBtE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAExC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AAGtB,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBtE"}
package/dist/index.js CHANGED
@@ -62,7 +62,7 @@ function activate(registry) {
62
62
  const { OrderImports } = yield import("./recipe/index.js");
63
63
  const { ModernizeOctalEscapeSequences, ModernizeOctalLiterals, RemoveDuplicateObjectKeys } = yield import("./javascript/migrate/es6/index.js");
64
64
  const { ExportAssignmentToExportDefault } = yield import("./javascript/migrate/typescript/index.js");
65
- const { UseObjectPropertyShorthand } = yield import("./javascript/cleanup/index.js");
65
+ const { UseObjectPropertyShorthand, PreferOptionalChain, AddParseIntRadix } = yield import("./javascript/cleanup/index.js");
66
66
  const { UpgradeDependencyVersion } = yield import("./javascript/recipes/index.js");
67
67
  const { FindDependency } = yield import("./javascript/search/index.js");
68
68
  registry.register(ExportAssignmentToExportDefault);
@@ -72,6 +72,8 @@ function activate(registry) {
72
72
  registry.register(ModernizeOctalLiterals);
73
73
  registry.register(RemoveDuplicateObjectKeys);
74
74
  registry.register(UseObjectPropertyShorthand);
75
+ registry.register(PreferOptionalChain);
76
+ registry.register(AddParseIntRadix);
75
77
  registry.register(UpgradeDependencyVersion);
76
78
  });
77
79
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { Recipe } from "../../recipe";
2
+ import { TreeVisitor } from "../../visitor";
3
+ import { ExecutionContext } from "../../execution";
4
+ /**
5
+ * Adds the radix parameter to parseInt() calls when missing.
6
+ *
7
+ * The radix parameter specifies the base of the numeral system to use.
8
+ * Without it, parseInt can produce unexpected results:
9
+ * - parseInt("08") was 0 in older JavaScript (octal interpretation)
10
+ * - Modern JavaScript defaults to base 10, but explicit radix is clearer
11
+ *
12
+ * Examples:
13
+ * - `parseInt(x)` becomes `parseInt(x, 10)`
14
+ * - `parseInt(str)` becomes `parseInt(str, 10)`
15
+ */
16
+ export declare class AddParseIntRadix extends Recipe {
17
+ name: string;
18
+ displayName: string;
19
+ description: string;
20
+ editor(): Promise<TreeVisitor<any, ExecutionContext>>;
21
+ }
22
+ //# sourceMappingURL=add-parse-int-radix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-parse-int-radix.d.ts","sourceRoot":"","sources":["../../../src/javascript/cleanup/add-parse-int-radix.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AAMjD;;;;;;;;;;;GAWG;AACH,qBAAa,gBAAiB,SAAQ,MAAM;IACxC,IAAI,SAA4D;IAChE,WAAW,SAA6B;IACxC,WAAW,SAAwH;IAE7H,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CA6D9D"}
@@ -0,0 +1,104 @@
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.AddParseIntRadix = void 0;
28
+ const recipe_1 = require("../../recipe");
29
+ const visitor_1 = require("../visitor");
30
+ const java_1 = require("../../java");
31
+ const markers_1 = require("../../markers");
32
+ const uuid_1 = require("../../uuid");
33
+ /**
34
+ * Adds the radix parameter to parseInt() calls when missing.
35
+ *
36
+ * The radix parameter specifies the base of the numeral system to use.
37
+ * Without it, parseInt can produce unexpected results:
38
+ * - parseInt("08") was 0 in older JavaScript (octal interpretation)
39
+ * - Modern JavaScript defaults to base 10, but explicit radix is clearer
40
+ *
41
+ * Examples:
42
+ * - `parseInt(x)` becomes `parseInt(x, 10)`
43
+ * - `parseInt(str)` becomes `parseInt(str, 10)`
44
+ */
45
+ class AddParseIntRadix extends recipe_1.Recipe {
46
+ constructor() {
47
+ super(...arguments);
48
+ this.name = "org.openrewrite.javascript.cleanup.add-parse-int-radix";
49
+ this.displayName = "Add radix to `parseInt`";
50
+ this.description = "Adds the radix parameter (base 10) to `parseInt()` calls that are missing it, preventing potential parsing issues.";
51
+ }
52
+ editor() {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ return new class extends visitor_1.JavaScriptVisitor {
55
+ visitMethodInvocation(method, ctx) {
56
+ const _super = Object.create(null, {
57
+ visitMethodInvocation: { get: () => super.visitMethodInvocation }
58
+ });
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ const visited = yield _super.visitMethodInvocation.call(this, method, ctx);
61
+ // Check if this is a call to parseInt
62
+ if (visited.select) {
63
+ // This is a method call on an object (e.g., obj.parseInt())
64
+ // parseInt is typically called as a global function, not a method
65
+ return visited;
66
+ }
67
+ // Check the method name
68
+ if (visited.name.simpleName !== 'parseInt') {
69
+ return visited;
70
+ }
71
+ // Check if there's exactly one argument (no radix)
72
+ const args = visited.arguments;
73
+ if (!args || args.elements.length !== 1) {
74
+ return visited;
75
+ }
76
+ // Add the radix parameter (10)
77
+ const existingArg = args.elements[0];
78
+ const radixLiteral = {
79
+ kind: java_1.J.Kind.Literal,
80
+ id: (0, uuid_1.randomId)(),
81
+ prefix: java_1.singleSpace,
82
+ markers: markers_1.emptyMarkers,
83
+ value: 10,
84
+ valueSource: '10',
85
+ unicodeEscapes: undefined,
86
+ type: undefined
87
+ };
88
+ return Object.assign(Object.assign({}, visited), { arguments: Object.assign(Object.assign({}, args), { elements: [
89
+ Object.assign(Object.assign({}, existingArg), { after: Object.assign(Object.assign({}, existingArg.after), { whitespace: '' }) }),
90
+ {
91
+ kind: java_1.J.Kind.RightPadded,
92
+ element: radixLiteral,
93
+ after: existingArg.after,
94
+ markers: markers_1.emptyMarkers
95
+ }
96
+ ] }) });
97
+ });
98
+ }
99
+ };
100
+ });
101
+ }
102
+ }
103
+ exports.AddParseIntRadix = AddParseIntRadix;
104
+ //# sourceMappingURL=add-parse-int-radix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add-parse-int-radix.js","sourceRoot":"","sources":["../../../src/javascript/cleanup/add-parse-int-radix.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;AAEH,yCAAoC;AAGpC,wCAA6C;AAC7C,qCAA0C;AAC1C,2CAA2C;AAC3C,qCAAoC;AAEpC;;;;;;;;;;;GAWG;AACH,MAAa,gBAAiB,SAAQ,eAAM;IAA5C;;QACI,SAAI,GAAG,wDAAwD,CAAC;QAChE,gBAAW,GAAG,yBAAyB,CAAC;QACxC,gBAAW,GAAG,oHAAoH,CAAC;IA+DvI,CAAC;IA7DS,MAAM;;YACR,OAAO,IAAI,KAAM,SAAQ,2BAAmC;gBAExC,qBAAqB,CAAC,MAA0B,EAAE,GAAqB;;;;;wBACnF,MAAM,OAAO,GAAG,MAAM,OAAM,qBAAqB,YAAC,MAAM,EAAE,GAAG,CAAuB,CAAC;wBAErF,sCAAsC;wBACtC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;4BACjB,4DAA4D;4BAC5D,kEAAkE;4BAClE,OAAO,OAAO,CAAC;wBACnB,CAAC;wBAED,wBAAwB;wBACxB,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;4BACzC,OAAO,OAAO,CAAC;wBACnB,CAAC;wBAED,mDAAmD;wBACnD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;wBAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BACtC,OAAO,OAAO,CAAC;wBACnB,CAAC;wBAED,+BAA+B;wBAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACrC,MAAM,YAAY,GAAc;4BAC5B,IAAI,EAAE,QAAC,CAAC,IAAI,CAAC,OAAO;4BACpB,EAAE,EAAE,IAAA,eAAQ,GAAE;4BACd,MAAM,EAAE,kBAAW;4BACnB,OAAO,EAAE,sBAAY;4BACrB,KAAK,EAAE,EAAE;4BACT,WAAW,EAAE,IAAI;4BACjB,cAAc,EAAE,SAAS;4BACzB,IAAI,EAAE,SAAS;yBAClB,CAAC;wBAEF,OAAO,gCACA,OAAO,KACV,SAAS,kCACF,IAAI,KACP,QAAQ,EAAE;oEAEC,WAAW,KACd,KAAK,kCACE,WAAW,CAAC,KAAK,KACpB,UAAU,EAAE,EAAE;oCAGtB;wCACI,IAAI,EAAE,QAAC,CAAC,IAAI,CAAC,WAAW;wCACxB,OAAO,EAAE,YAAY;wCACrB,KAAK,EAAE,WAAW,CAAC,KAAK;wCACxB,OAAO,EAAE,sBAAY;qCACxB;iCACJ,MAEc,CAAC;oBAC5B,CAAC;iBAAA;aACJ,CAAC;QACN,CAAC;KAAA;CACJ;AAlED,4CAkEC"}
@@ -1,2 +1,4 @@
1
1
  export { UseObjectPropertyShorthand } from "./use-object-property-shorthand";
2
+ export { PreferOptionalChain } from "./prefer-optional-chain";
3
+ export { AddParseIntRadix } from "./add-parse-int-radix";
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/cleanup/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,0BAA0B,EAAC,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/javascript/cleanup/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,0BAA0B,EAAC,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAC,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAC"}
@@ -15,7 +15,11 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.UseObjectPropertyShorthand = void 0;
18
+ exports.AddParseIntRadix = exports.PreferOptionalChain = exports.UseObjectPropertyShorthand = void 0;
19
19
  var use_object_property_shorthand_1 = require("./use-object-property-shorthand");
20
20
  Object.defineProperty(exports, "UseObjectPropertyShorthand", { enumerable: true, get: function () { return use_object_property_shorthand_1.UseObjectPropertyShorthand; } });
21
+ var prefer_optional_chain_1 = require("./prefer-optional-chain");
22
+ Object.defineProperty(exports, "PreferOptionalChain", { enumerable: true, get: function () { return prefer_optional_chain_1.PreferOptionalChain; } });
23
+ var add_parse_int_radix_1 = require("./add-parse-int-radix");
24
+ Object.defineProperty(exports, "AddParseIntRadix", { enumerable: true, get: function () { return add_parse_int_radix_1.AddParseIntRadix; } });
21
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/cleanup/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,iFAA2E;AAAnE,2IAAA,0BAA0B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/javascript/cleanup/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,iFAA2E;AAAnE,2IAAA,0BAA0B,OAAA;AAClC,iEAA4D;AAApD,4HAAA,mBAAmB,OAAA;AAC3B,6DAAuD;AAA/C,uHAAA,gBAAgB,OAAA"}
@@ -0,0 +1,19 @@
1
+ import { Recipe } from "../../recipe";
2
+ import { TreeVisitor } from "../../visitor";
3
+ import { ExecutionContext } from "../../execution";
4
+ /**
5
+ * Converts ternary expressions that check for null/undefined into optional chaining.
6
+ *
7
+ * Examples:
8
+ * - `foo ? foo.bar : undefined` becomes `foo?.bar`
9
+ * - `foo ? foo.bar : null` becomes `foo?.bar ?? null`
10
+ * - `obj ? obj.method() : undefined` becomes `obj?.method()`
11
+ * - `arr ? arr[0] : undefined` becomes `arr?.[0]`
12
+ */
13
+ export declare class PreferOptionalChain extends Recipe {
14
+ name: string;
15
+ displayName: string;
16
+ description: string;
17
+ editor(): Promise<TreeVisitor<any, ExecutionContext>>;
18
+ }
19
+ //# sourceMappingURL=prefer-optional-chain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefer-optional-chain.d.ts","sourceRoot":"","sources":["../../../src/javascript/cleanup/prefer-optional-chain.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,MAAM,EAAC,MAAM,cAAc,CAAC;AACpC,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAC;AAQjD;;;;;;;;GAQG;AACH,qBAAa,mBAAoB,SAAQ,MAAM;IAC3C,IAAI,SAA8D;IAClE,WAAW,SAA8B;IACzC,WAAW,SAA+G;IAEpH,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CAgJ9D"}
@@ -0,0 +1,160 @@
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.PreferOptionalChain = void 0;
28
+ const recipe_1 = require("../../recipe");
29
+ const visitor_1 = require("../visitor");
30
+ const java_1 = require("../../java");
31
+ const tree_1 = require("../tree");
32
+ const markers_1 = require("../../markers");
33
+ const uuid_1 = require("../../uuid");
34
+ /**
35
+ * Converts ternary expressions that check for null/undefined into optional chaining.
36
+ *
37
+ * Examples:
38
+ * - `foo ? foo.bar : undefined` becomes `foo?.bar`
39
+ * - `foo ? foo.bar : null` becomes `foo?.bar ?? null`
40
+ * - `obj ? obj.method() : undefined` becomes `obj?.method()`
41
+ * - `arr ? arr[0] : undefined` becomes `arr?.[0]`
42
+ */
43
+ class PreferOptionalChain extends recipe_1.Recipe {
44
+ constructor() {
45
+ super(...arguments);
46
+ this.name = "org.openrewrite.javascript.cleanup.prefer-optional-chain";
47
+ this.displayName = "Prefer optional chaining";
48
+ this.description = "Converts ternary expressions like `foo ? foo.bar : undefined` to use optional chaining syntax `foo?.bar`.";
49
+ }
50
+ editor() {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ return new class extends visitor_1.JavaScriptVisitor {
53
+ visitTernary(ternary, ctx) {
54
+ const _super = Object.create(null, {
55
+ visitTernary: { get: () => super.visitTernary }
56
+ });
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ const visited = yield _super.visitTernary.call(this, ternary, ctx);
59
+ // Check if the condition is an identifier
60
+ if (visited.condition.kind !== java_1.J.Kind.Identifier) {
61
+ return visited;
62
+ }
63
+ const conditionIdent = visited.condition;
64
+ const conditionName = conditionIdent.simpleName;
65
+ // Check if the false part is undefined
66
+ // Note: We only convert when the false part is undefined, not null,
67
+ // because optional chaining returns undefined (not null) when the target is nullish.
68
+ const falsePart = visited.falsePart.element;
69
+ const isUndefinedFalse = falsePart.kind === java_1.J.Kind.Identifier &&
70
+ falsePart.simpleName === 'undefined';
71
+ if (!isUndefinedFalse) {
72
+ return visited;
73
+ }
74
+ // Check if the true part accesses a property/method on the condition
75
+ const truePart = visited.truePart.element;
76
+ const result = this.extractOptionalChainTarget(truePart, conditionName);
77
+ if (!result) {
78
+ return visited;
79
+ }
80
+ // Transform to optional chaining
81
+ // The result already has the Optional marker added, just update prefix
82
+ return Object.assign(Object.assign({}, result), { prefix: visited.prefix });
83
+ });
84
+ }
85
+ /**
86
+ * Extracts the target expression for optional chaining if the expression
87
+ * accesses a property on the given identifier.
88
+ *
89
+ * Returns the expression with Optional marker added, or undefined if not applicable.
90
+ */
91
+ extractOptionalChainTarget(expr, targetName) {
92
+ var _a;
93
+ // Handle FieldAccess: foo.bar
94
+ if (expr.kind === java_1.J.Kind.FieldAccess) {
95
+ const fieldAccess = expr;
96
+ if (fieldAccess.target.kind === java_1.J.Kind.Identifier) {
97
+ const target = fieldAccess.target;
98
+ if (target.simpleName === targetName) {
99
+ // Already has optional marker?
100
+ if ((0, markers_1.findMarker)(target, tree_1.JS.Markers.Optional)) {
101
+ return fieldAccess;
102
+ }
103
+ // Add Optional marker to the target (foo?.bar means marker on foo)
104
+ const optionalMarker = {
105
+ kind: tree_1.JS.Markers.Optional,
106
+ id: (0, uuid_1.randomId)(),
107
+ prefix: java_1.emptySpace
108
+ };
109
+ return Object.assign(Object.assign({}, fieldAccess), { target: Object.assign(Object.assign({}, target), { markers: (0, markers_1.markers)(...target.markers.markers, optionalMarker) }) });
110
+ }
111
+ }
112
+ }
113
+ // Handle MethodInvocation: foo.bar()
114
+ if (expr.kind === java_1.J.Kind.MethodInvocation) {
115
+ const methodInvocation = expr;
116
+ if (((_a = methodInvocation.select) === null || _a === void 0 ? void 0 : _a.element.kind) === java_1.J.Kind.Identifier) {
117
+ const select = methodInvocation.select.element;
118
+ if (select.simpleName === targetName) {
119
+ // Already has optional marker?
120
+ if ((0, markers_1.findMarker)(select, tree_1.JS.Markers.Optional)) {
121
+ return methodInvocation;
122
+ }
123
+ // Add Optional marker to the select
124
+ const optionalMarker = {
125
+ kind: tree_1.JS.Markers.Optional,
126
+ id: (0, uuid_1.randomId)(),
127
+ prefix: java_1.emptySpace
128
+ };
129
+ return Object.assign(Object.assign({}, methodInvocation), { select: Object.assign(Object.assign({}, methodInvocation.select), { element: Object.assign(Object.assign({}, select), { markers: (0, markers_1.markers)(...select.markers.markers, optionalMarker) }) }) });
130
+ }
131
+ }
132
+ }
133
+ // Handle ArrayAccess: foo[0]
134
+ if (expr.kind === java_1.J.Kind.ArrayAccess) {
135
+ const arrayAccess = expr;
136
+ if (arrayAccess.indexed.kind === java_1.J.Kind.Identifier) {
137
+ const indexed = arrayAccess.indexed;
138
+ if (indexed.simpleName === targetName) {
139
+ // Already has optional marker?
140
+ if ((0, markers_1.findMarker)(indexed, tree_1.JS.Markers.Optional)) {
141
+ return arrayAccess;
142
+ }
143
+ // Add Optional marker to the indexed expression
144
+ const optionalMarker = {
145
+ kind: tree_1.JS.Markers.Optional,
146
+ id: (0, uuid_1.randomId)(),
147
+ prefix: java_1.emptySpace
148
+ };
149
+ return Object.assign(Object.assign({}, arrayAccess), { indexed: Object.assign(Object.assign({}, indexed), { markers: (0, markers_1.markers)(...indexed.markers.markers, optionalMarker) }) });
150
+ }
151
+ }
152
+ }
153
+ return undefined;
154
+ }
155
+ };
156
+ });
157
+ }
158
+ }
159
+ exports.PreferOptionalChain = PreferOptionalChain;
160
+ //# sourceMappingURL=prefer-optional-chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prefer-optional-chain.js","sourceRoot":"","sources":["../../../src/javascript/cleanup/prefer-optional-chain.ts"],"names":[],"mappings":"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"}
package/dist/rpc/queue.js CHANGED
@@ -136,7 +136,7 @@ class RpcSendQueue {
136
136
  yield this.add(anAfter, onChangeRun);
137
137
  }
138
138
  else {
139
- const aBefore = before ? before[beforePos] : undefined;
139
+ const aBefore = before === null || before === void 0 ? void 0 : before[beforePos];
140
140
  if (aBefore === anAfter) {
141
141
  this.put({ state: RpcObjectState.NO_CHANGE });
142
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/rpc/queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/rpc/queue.ts"],"names":[],"mappings":"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"}
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- 8.69.0-20251207-135957
1
+ 8.69.0-20251207-142820
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openrewrite/rewrite",
3
- "version": "8.69.0-20251207-135957",
3
+ "version": "8.69.0-20251207-142820",
4
4
  "license": "Moderne Source Available License",
5
5
  "description": "OpenRewrite JavaScript.",
6
6
  "homepage": "https://github.com/openrewrite/rewrite",
@@ -204,13 +204,15 @@ async function main() {
204
204
  // Handle special built-in recipes
205
205
  let recipe: Recipe | undefined;
206
206
  const isValidateParsing = recipeArg === 'validate-parsing';
207
+ const isBuiltinRecipe = recipeArg.startsWith('builtin:');
207
208
 
208
- if (!isValidateParsing) {
209
+ if (!isValidateParsing && !isBuiltinRecipe) {
209
210
  // Parse recipe specification
210
211
  const recipeSpec = parseRecipeSpec(recipeArg);
211
212
  if (!recipeSpec) {
212
213
  console.error(`Invalid recipe format: ${recipeArg}`);
213
214
  console.error('Expected format: "package:recipe" (e.g., "@openrewrite/recipes-nodejs:replace-deprecated-slice")');
215
+ console.error('Or use "builtin:recipe" for built-in recipes (e.g., "builtin:prefer-optional-chain")');
214
216
  console.error('Or use "validate-parsing" to check for parse errors and idempotence.');
215
217
  process.exit(1);
216
218
  }
@@ -254,6 +256,30 @@ async function main() {
254
256
  if (opts.verbose) {
255
257
  console.log(`Running recipe: ${recipe.name}`);
256
258
  }
259
+ } else if (isBuiltinRecipe) {
260
+ // Handle builtin: prefix for built-in recipes
261
+ const recipeName = recipeArg.substring('builtin:'.length);
262
+
263
+ // Parse recipe options
264
+ const recipeOptions = parseRecipeOptions(opts.option);
265
+ if (opts.verbose && Object.keys(recipeOptions).length > 0) {
266
+ console.log(`Options: ${JSON.stringify(recipeOptions)}`);
267
+ }
268
+
269
+ // Set up recipe registry with only built-in recipes
270
+ const registry = new RecipeRegistry();
271
+ await activate(registry);
272
+
273
+ // Find the recipe
274
+ const foundRecipe = findRecipe(registry, recipeName, recipeOptions);
275
+ if (!foundRecipe) {
276
+ process.exit(1);
277
+ }
278
+ recipe = foundRecipe;
279
+
280
+ if (opts.verbose) {
281
+ console.log(`Running built-in recipe: ${recipe.name}`);
282
+ }
257
283
  }
258
284
 
259
285
  const spinner = new Spinner();
package/src/index.ts CHANGED
@@ -38,7 +38,7 @@ export async function activate(registry: RecipeRegistry): Promise<void> {
38
38
  const {OrderImports} = await import("./recipe/index.js");
39
39
  const {ModernizeOctalEscapeSequences, ModernizeOctalLiterals, RemoveDuplicateObjectKeys} = await import("./javascript/migrate/es6/index.js");
40
40
  const {ExportAssignmentToExportDefault} = await import("./javascript/migrate/typescript/index.js");
41
- const {UseObjectPropertyShorthand} = await import("./javascript/cleanup/index.js");
41
+ const {UseObjectPropertyShorthand, PreferOptionalChain, AddParseIntRadix} = await import("./javascript/cleanup/index.js");
42
42
  const {UpgradeDependencyVersion} = await import("./javascript/recipes/index.js");
43
43
  const {FindDependency} = await import("./javascript/search/index.js");
44
44
 
@@ -49,6 +49,8 @@ export async function activate(registry: RecipeRegistry): Promise<void> {
49
49
  registry.register(ModernizeOctalLiterals);
50
50
  registry.register(RemoveDuplicateObjectKeys);
51
51
  registry.register(UseObjectPropertyShorthand);
52
+ registry.register(PreferOptionalChain);
53
+ registry.register(AddParseIntRadix);
52
54
  registry.register(UpgradeDependencyVersion);
53
55
  }
54
56
 
@@ -0,0 +1,103 @@
1
+ /*
2
+ * Copyright 2025 the original author or authors.
3
+ * <p>
4
+ * Licensed under the Moderne Source Available License (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ * <p>
8
+ * https://docs.moderne.io/licensing/moderne-source-available-license
9
+ * <p>
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import {Recipe} from "../../recipe";
18
+ import {TreeVisitor} from "../../visitor";
19
+ import {ExecutionContext} from "../../execution";
20
+ import {JavaScriptVisitor} from "../visitor";
21
+ import {J, singleSpace} from "../../java";
22
+ import {emptyMarkers} from "../../markers";
23
+ import {randomId} from "../../uuid";
24
+
25
+ /**
26
+ * Adds the radix parameter to parseInt() calls when missing.
27
+ *
28
+ * The radix parameter specifies the base of the numeral system to use.
29
+ * Without it, parseInt can produce unexpected results:
30
+ * - parseInt("08") was 0 in older JavaScript (octal interpretation)
31
+ * - Modern JavaScript defaults to base 10, but explicit radix is clearer
32
+ *
33
+ * Examples:
34
+ * - `parseInt(x)` becomes `parseInt(x, 10)`
35
+ * - `parseInt(str)` becomes `parseInt(str, 10)`
36
+ */
37
+ export class AddParseIntRadix extends Recipe {
38
+ name = "org.openrewrite.javascript.cleanup.add-parse-int-radix";
39
+ displayName = "Add radix to `parseInt`";
40
+ description = "Adds the radix parameter (base 10) to `parseInt()` calls that are missing it, preventing potential parsing issues.";
41
+
42
+ async editor(): Promise<TreeVisitor<any, ExecutionContext>> {
43
+ return new class extends JavaScriptVisitor<ExecutionContext> {
44
+
45
+ protected async visitMethodInvocation(method: J.MethodInvocation, ctx: ExecutionContext): Promise<J | undefined> {
46
+ const visited = await super.visitMethodInvocation(method, ctx) as J.MethodInvocation;
47
+
48
+ // Check if this is a call to parseInt
49
+ if (visited.select) {
50
+ // This is a method call on an object (e.g., obj.parseInt())
51
+ // parseInt is typically called as a global function, not a method
52
+ return visited;
53
+ }
54
+
55
+ // Check the method name
56
+ if (visited.name.simpleName !== 'parseInt') {
57
+ return visited;
58
+ }
59
+
60
+ // Check if there's exactly one argument (no radix)
61
+ const args = visited.arguments;
62
+ if (!args || args.elements.length !== 1) {
63
+ return visited;
64
+ }
65
+
66
+ // Add the radix parameter (10)
67
+ const existingArg = args.elements[0];
68
+ const radixLiteral: J.Literal = {
69
+ kind: J.Kind.Literal,
70
+ id: randomId(),
71
+ prefix: singleSpace,
72
+ markers: emptyMarkers,
73
+ value: 10,
74
+ valueSource: '10',
75
+ unicodeEscapes: undefined,
76
+ type: undefined
77
+ };
78
+
79
+ return {
80
+ ...visited,
81
+ arguments: {
82
+ ...args,
83
+ elements: [
84
+ {
85
+ ...existingArg,
86
+ after: {
87
+ ...existingArg.after,
88
+ whitespace: ''
89
+ }
90
+ },
91
+ {
92
+ kind: J.Kind.RightPadded,
93
+ element: radixLiteral,
94
+ after: existingArg.after,
95
+ markers: emptyMarkers
96
+ }
97
+ ]
98
+ }
99
+ } as J.MethodInvocation;
100
+ }
101
+ };
102
+ }
103
+ }
@@ -15,3 +15,5 @@
15
15
  */
16
16
 
17
17
  export {UseObjectPropertyShorthand} from "./use-object-property-shorthand";
18
+ export {PreferOptionalChain} from "./prefer-optional-chain";
19
+ export {AddParseIntRadix} from "./add-parse-int-radix";
@@ -0,0 +1,185 @@
1
+ /*
2
+ * Copyright 2025 the original author or authors.
3
+ * <p>
4
+ * Licensed under the Moderne Source Available License (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ * <p>
8
+ * https://docs.moderne.io/licensing/moderne-source-available-license
9
+ * <p>
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import {Recipe} from "../../recipe";
18
+ import {TreeVisitor} from "../../visitor";
19
+ import {ExecutionContext} from "../../execution";
20
+ import {JavaScriptVisitor} from "../visitor";
21
+ import {emptySpace, Expression, J} from "../../java";
22
+ import {JS} from "../tree";
23
+ import {findMarker, markers} from "../../markers";
24
+ import {randomId} from "../../uuid";
25
+ import {Optional} from "../markers";
26
+
27
+ /**
28
+ * Converts ternary expressions that check for null/undefined into optional chaining.
29
+ *
30
+ * Examples:
31
+ * - `foo ? foo.bar : undefined` becomes `foo?.bar`
32
+ * - `foo ? foo.bar : null` becomes `foo?.bar ?? null`
33
+ * - `obj ? obj.method() : undefined` becomes `obj?.method()`
34
+ * - `arr ? arr[0] : undefined` becomes `arr?.[0]`
35
+ */
36
+ export class PreferOptionalChain extends Recipe {
37
+ name = "org.openrewrite.javascript.cleanup.prefer-optional-chain";
38
+ displayName = "Prefer optional chaining";
39
+ description = "Converts ternary expressions like `foo ? foo.bar : undefined` to use optional chaining syntax `foo?.bar`.";
40
+
41
+ async editor(): Promise<TreeVisitor<any, ExecutionContext>> {
42
+ return new class extends JavaScriptVisitor<ExecutionContext> {
43
+
44
+ protected async visitTernary(ternary: J.Ternary, ctx: ExecutionContext): Promise<J | undefined> {
45
+ const visited = await super.visitTernary(ternary, ctx) as J.Ternary;
46
+
47
+ // Check if the condition is an identifier
48
+ if (visited.condition.kind !== J.Kind.Identifier) {
49
+ return visited;
50
+ }
51
+ const conditionIdent = visited.condition as J.Identifier;
52
+ const conditionName = conditionIdent.simpleName;
53
+
54
+ // Check if the false part is undefined
55
+ // Note: We only convert when the false part is undefined, not null,
56
+ // because optional chaining returns undefined (not null) when the target is nullish.
57
+ const falsePart = visited.falsePart.element;
58
+ const isUndefinedFalse = falsePart.kind === J.Kind.Identifier &&
59
+ (falsePart as J.Identifier).simpleName === 'undefined';
60
+
61
+ if (!isUndefinedFalse) {
62
+ return visited;
63
+ }
64
+
65
+ // Check if the true part accesses a property/method on the condition
66
+ const truePart = visited.truePart.element;
67
+ const result = this.extractOptionalChainTarget(truePart, conditionName);
68
+
69
+ if (!result) {
70
+ return visited;
71
+ }
72
+
73
+ // Transform to optional chaining
74
+ // The result already has the Optional marker added, just update prefix
75
+ return {
76
+ ...result,
77
+ prefix: visited.prefix
78
+ } as Expression;
79
+ }
80
+
81
+ /**
82
+ * Extracts the target expression for optional chaining if the expression
83
+ * accesses a property on the given identifier.
84
+ *
85
+ * Returns the expression with Optional marker added, or undefined if not applicable.
86
+ */
87
+ private extractOptionalChainTarget(expr: Expression, targetName: string): Expression | undefined {
88
+ // Handle FieldAccess: foo.bar
89
+ if (expr.kind === J.Kind.FieldAccess) {
90
+ const fieldAccess = expr as J.FieldAccess;
91
+ if (fieldAccess.target.kind === J.Kind.Identifier) {
92
+ const target = fieldAccess.target as J.Identifier;
93
+ if (target.simpleName === targetName) {
94
+ // Already has optional marker?
95
+ if (findMarker(target, JS.Markers.Optional)) {
96
+ return fieldAccess;
97
+ }
98
+ // Add Optional marker to the target (foo?.bar means marker on foo)
99
+ const optionalMarker: Optional = {
100
+ kind: JS.Markers.Optional,
101
+ id: randomId(),
102
+ prefix: emptySpace
103
+ };
104
+ return {
105
+ ...fieldAccess,
106
+ target: {
107
+ ...target,
108
+ markers: markers(
109
+ ...target.markers.markers,
110
+ optionalMarker
111
+ )
112
+ }
113
+ } as J.FieldAccess;
114
+ }
115
+ }
116
+ }
117
+
118
+ // Handle MethodInvocation: foo.bar()
119
+ if (expr.kind === J.Kind.MethodInvocation) {
120
+ const methodInvocation = expr as J.MethodInvocation;
121
+ if (methodInvocation.select?.element.kind === J.Kind.Identifier) {
122
+ const select = methodInvocation.select.element as J.Identifier;
123
+ if (select.simpleName === targetName) {
124
+ // Already has optional marker?
125
+ if (findMarker(select, JS.Markers.Optional)) {
126
+ return methodInvocation;
127
+ }
128
+ // Add Optional marker to the select
129
+ const optionalMarker: Optional = {
130
+ kind: JS.Markers.Optional,
131
+ id: randomId(),
132
+ prefix: emptySpace
133
+ };
134
+ return {
135
+ ...methodInvocation,
136
+ select: {
137
+ ...methodInvocation.select,
138
+ element: {
139
+ ...select,
140
+ markers: markers(
141
+ ...select.markers.markers,
142
+ optionalMarker
143
+ )
144
+ }
145
+ }
146
+ } as J.MethodInvocation;
147
+ }
148
+ }
149
+ }
150
+
151
+ // Handle ArrayAccess: foo[0]
152
+ if (expr.kind === J.Kind.ArrayAccess) {
153
+ const arrayAccess = expr as J.ArrayAccess;
154
+ if (arrayAccess.indexed.kind === J.Kind.Identifier) {
155
+ const indexed = arrayAccess.indexed as J.Identifier;
156
+ if (indexed.simpleName === targetName) {
157
+ // Already has optional marker?
158
+ if (findMarker(indexed, JS.Markers.Optional)) {
159
+ return arrayAccess;
160
+ }
161
+ // Add Optional marker to the indexed expression
162
+ const optionalMarker: Optional = {
163
+ kind: JS.Markers.Optional,
164
+ id: randomId(),
165
+ prefix: emptySpace
166
+ };
167
+ return {
168
+ ...arrayAccess,
169
+ indexed: {
170
+ ...indexed,
171
+ markers: markers(
172
+ ...indexed.markers.markers,
173
+ optionalMarker
174
+ )
175
+ }
176
+ } as J.ArrayAccess;
177
+ }
178
+ }
179
+ }
180
+
181
+ return undefined;
182
+ }
183
+ };
184
+ }
185
+ }
package/src/rpc/queue.ts CHANGED
@@ -180,7 +180,7 @@ export class RpcSendQueue {
180
180
  if (!beforePos) {
181
181
  await this.add(anAfter, onChangeRun);
182
182
  } else {
183
- const aBefore = before ? before[beforePos] : undefined;
183
+ const aBefore = before?.[beforePos];
184
184
  if (aBefore === anAfter) {
185
185
  this.put({state: RpcObjectState.NO_CHANGE});
186
186
  } else if (anAfter !== undefined && this.typesAreDifferent(anAfter, aBefore)) {