@openrewrite/recipes-angular 1.9.0-20260804-204521 → 1.9.0-20260804-210913

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 (51) hide show
  1. package/dist/index.d.ts +4 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +18 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/migration/add-istanbul-instrumenter.d.ts +8 -0
  6. package/dist/migration/add-istanbul-instrumenter.d.ts.map +1 -0
  7. package/dist/migration/add-istanbul-instrumenter.js +80 -0
  8. package/dist/migration/add-istanbul-instrumenter.js.map +1 -0
  9. package/dist/migration/add-strict-templates-false.d.ts.map +1 -1
  10. package/dist/migration/add-strict-templates-false.js +4 -5
  11. package/dist/migration/add-strict-templates-false.js.map +1 -1
  12. package/dist/migration/add-trust-proxy-headers.d.ts +8 -0
  13. package/dist/migration/add-trust-proxy-headers.d.ts.map +1 -0
  14. package/dist/migration/add-trust-proxy-headers.js +82 -0
  15. package/dist/migration/add-trust-proxy-headers.js.map +1 -0
  16. package/dist/migration/js-support.d.ts +6 -0
  17. package/dist/migration/js-support.d.ts.map +1 -0
  18. package/dist/migration/js-support.js +94 -0
  19. package/dist/migration/js-support.js.map +1 -0
  20. package/dist/migration/json-support.d.ts +6 -0
  21. package/dist/migration/json-support.d.ts.map +1 -1
  22. package/dist/migration/json-support.js +14 -0
  23. package/dist/migration/json-support.js.map +1 -1
  24. package/dist/migration/migrate-input-to-signal.d.ts.map +1 -1
  25. package/dist/migration/migrate-input-to-signal.js +3 -67
  26. package/dist/migration/migrate-input-to-signal.js.map +1 -1
  27. package/dist/migration/migrate-model-with-output.d.ts +8 -0
  28. package/dist/migration/migrate-model-with-output.d.ts.map +1 -0
  29. package/dist/migration/migrate-model-with-output.js +192 -0
  30. package/dist/migration/migrate-model-with-output.js.map +1 -0
  31. package/dist/migration/suppress-safe-navigation-diagnostics.js +1 -1
  32. package/dist/migration/suppress-safe-navigation-diagnostics.js.map +1 -1
  33. package/dist/migration/upgrade-to-angular-22.d.ts.map +1 -1
  34. package/dist/migration/upgrade-to-angular-22.js +9 -0
  35. package/dist/migration/upgrade-to-angular-22.js.map +1 -1
  36. package/dist/search/find-template-safe-navigation.d.ts +8 -0
  37. package/dist/search/find-template-safe-navigation.d.ts.map +1 -0
  38. package/dist/search/find-template-safe-navigation.js +105 -0
  39. package/dist/search/find-template-safe-navigation.js.map +1 -0
  40. package/package.json +1 -1
  41. package/src/index.ts +12 -0
  42. package/src/migration/add-istanbul-instrumenter.ts +62 -0
  43. package/src/migration/add-strict-templates-false.ts +4 -6
  44. package/src/migration/add-trust-proxy-headers.ts +61 -0
  45. package/src/migration/js-support.ts +92 -0
  46. package/src/migration/json-support.ts +13 -0
  47. package/src/migration/migrate-input-to-signal.ts +1 -67
  48. package/src/migration/migrate-model-with-output.ts +201 -0
  49. package/src/migration/suppress-safe-navigation-diagnostics.ts +2 -2
  50. package/src/migration/upgrade-to-angular-22.ts +9 -0
  51. package/src/search/find-template-safe-navigation.ts +72 -0
@@ -1 +1 @@
1
- {"version":3,"file":"json-support.js","sourceRoot":"","sources":["../../src/migration/json-support.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-support.js","sourceRoot":"","sources":["../../src/migration/json-support.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-input-to-signal.d.ts","sourceRoot":"","sources":["../../src/migration/migrate-input-to-signal.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,gBAAgB,EAAgD,MAAM,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAOzH,qBAAa,oBAAqB,SAAQ,MAAM;IAC5C,QAAQ,CAAC,IAAI,+DAA+D;IAC5E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAkD;IAC9E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAEoE;IAE1F,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CA4C9D"}
1
+ {"version":3,"file":"migrate-input-to-signal.d.ts","sourceRoot":"","sources":["../../src/migration/migrate-input-to-signal.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,gBAAgB,EAAgD,MAAM,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAQzH,qBAAa,oBAAqB,SAAQ,MAAM;IAC5C,QAAQ,CAAC,IAAI,+DAA+D;IAC5E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAkD;IAC9E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAEoE;IAE1F,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CA4C9D"}
@@ -19,6 +19,7 @@ const rewrite_1 = require("@openrewrite/rewrite");
19
19
  const javascript_1 = require("@openrewrite/rewrite/javascript");
20
20
  const java_1 = require("@openrewrite/rewrite/java");
21
21
  const mutative_1 = require("mutative");
22
+ const js_support_1 = require("./js-support");
22
23
  const ANGULAR_DECORATORS = ['Component', 'Directive', 'Pipe', 'Injectable'];
23
24
  class MigrateInputToSignal extends rewrite_1.Recipe {
24
25
  constructor() {
@@ -143,8 +144,8 @@ function buildInputCall(typeExpr, existingInitializer, config) {
143
144
  }
144
145
  // Options argument: { alias: 'foo' }
145
146
  if (config.alias) {
146
- const aliasOption = buildOptionsObject([
147
- buildPropertyAssignment('alias', config.alias),
147
+ const aliasOption = (0, js_support_1.buildOptionsObject)([
148
+ (0, js_support_1.buildPropertyAssignment)('alias', config.alias),
148
149
  ]);
149
150
  if (args.length > 0) {
150
151
  // Add space before options when there's a default value
@@ -214,71 +215,6 @@ function buildInputCall(typeExpr, existingInitializer, config) {
214
215
  };
215
216
  return call;
216
217
  }
217
- function buildPropertyAssignment(key, value) {
218
- return {
219
- kind: javascript_1.JS.Kind.PropertyAssignment,
220
- id: (0, rewrite_1.randomId)(),
221
- prefix: java_1.singleSpace,
222
- markers: rewrite_1.emptyMarkers,
223
- name: {
224
- kind: java_1.J.Kind.RightPadded,
225
- element: {
226
- kind: java_1.J.Kind.Identifier,
227
- id: (0, rewrite_1.randomId)(),
228
- prefix: java_1.emptySpace,
229
- markers: rewrite_1.emptyMarkers,
230
- simpleName: key,
231
- annotations: [],
232
- type: undefined,
233
- },
234
- after: java_1.emptySpace,
235
- markers: rewrite_1.emptyMarkers,
236
- },
237
- assigmentToken: 'Colon',
238
- initializer: {
239
- kind: java_1.J.Kind.Literal,
240
- id: (0, rewrite_1.randomId)(),
241
- prefix: java_1.singleSpace,
242
- markers: rewrite_1.emptyMarkers,
243
- value: value,
244
- valueSource: `'${value}'`,
245
- unicodeEscapes: undefined,
246
- type: undefined,
247
- },
248
- };
249
- }
250
- function buildOptionsObject(properties) {
251
- return {
252
- kind: java_1.J.Kind.NewClass,
253
- id: (0, rewrite_1.randomId)(),
254
- prefix: java_1.emptySpace,
255
- markers: rewrite_1.emptyMarkers,
256
- enclosing: undefined,
257
- new: java_1.emptySpace,
258
- clazz: undefined,
259
- arguments: {
260
- kind: 'org.openrewrite.java.tree.JContainer',
261
- before: java_1.emptySpace,
262
- markers: rewrite_1.emptyMarkers,
263
- elements: [],
264
- },
265
- body: {
266
- kind: java_1.J.Kind.Block,
267
- id: (0, rewrite_1.randomId)(),
268
- prefix: java_1.emptySpace,
269
- markers: rewrite_1.emptyMarkers,
270
- static: { kind: java_1.J.Kind.RightPadded, element: false, after: java_1.emptySpace, markers: rewrite_1.emptyMarkers },
271
- statements: properties.map(p => ({
272
- kind: java_1.J.Kind.RightPadded,
273
- element: p,
274
- after: java_1.emptySpace,
275
- markers: rewrite_1.emptyMarkers,
276
- })),
277
- end: java_1.singleSpace,
278
- },
279
- constructorType: undefined,
280
- };
281
- }
282
218
  function buildInputField(varDecl, inputAnnotationIdx, config) {
283
219
  const namedVar = varDecl.variables[0].element;
284
220
  const inputCall = buildInputCall(varDecl.typeExpression, namedVar.initializer, config);
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-input-to-signal.js","sourceRoot":"","sources":["../../src/migration/migrate-input-to-signal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate-input-to-signal.js","sourceRoot":"","sources":["../../src/migration/migrate-input-to-signal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ExecutionContext, Recipe, TreeVisitor } from "@openrewrite/rewrite";
2
+ export declare class MigrateModelWithOutput extends Recipe {
3
+ readonly name = "org.openrewrite.angular.migration.migrate-model-with-output";
4
+ readonly displayName: string;
5
+ readonly description: string;
6
+ editor(): Promise<TreeVisitor<any, ExecutionContext>>;
7
+ }
8
+ //# sourceMappingURL=migrate-model-with-output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-model-with-output.d.ts","sourceRoot":"","sources":["../../src/migration/migrate-model-with-output.ts"],"names":[],"mappings":"AAMA,OAAO,EAAe,gBAAgB,EAAkC,MAAM,EAAE,WAAW,EAAC,MAAM,sBAAsB,CAAC;AAMzH,qBAAa,sBAAuB,SAAQ,MAAM;IAC9C,QAAQ,CAAC,IAAI,iEAAiE;IAC9E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAA2D;IACvF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAE8E;IAEpG,MAAM,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;CA6C9D"}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2026 the original author or authors.
4
+ *
5
+ * Moderne Proprietary. Only for use by Moderne customers under the terms of a commercial contract.
6
+ */
7
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
9
+ return new (P || (P = Promise))(function (resolve, reject) {
10
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
11
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
12
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
13
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
14
+ });
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.MigrateModelWithOutput = void 0;
18
+ const rewrite_1 = require("@openrewrite/rewrite");
19
+ const javascript_1 = require("@openrewrite/rewrite/javascript");
20
+ const java_1 = require("@openrewrite/rewrite/java");
21
+ const mutative_1 = require("mutative");
22
+ const js_support_1 = require("./js-support");
23
+ class MigrateModelWithOutput extends rewrite_1.Recipe {
24
+ constructor() {
25
+ super(...arguments);
26
+ this.name = "org.openrewrite.angular.migration.migrate-model-with-output";
27
+ this.displayName = "Split a `model()` that has a matching explicit output";
28
+ this.description = "Rewrites `foo = model()` to `fooInput = input({alias: 'foo'})` plus " +
29
+ "`foo = linkedSignal(this.fooInput)` when the same class also declares a `fooChange` output. " +
30
+ "`model()` already contributes a `fooChange` output, and Angular 22 rejects the resulting duplicate.";
31
+ }
32
+ editor() {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ return new class extends javascript_1.JavaScriptVisitor {
35
+ visitClassDeclaration(classDecl, p) {
36
+ const _super = Object.create(null, {
37
+ visitClassDeclaration: { get: () => super.visitClassDeclaration }
38
+ });
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const c = yield _super.visitClassDeclaration.call(this, classDecl, p);
41
+ if (!c)
42
+ return c;
43
+ const outputs = new Set();
44
+ for (const stmt of c.body.statements) {
45
+ const name = declaredName(stmt.element);
46
+ if (name && declaresOutput(stmt.element))
47
+ outputs.add(name);
48
+ }
49
+ if (outputs.size === 0)
50
+ return c;
51
+ let changed = false;
52
+ const newStatements = c.body.statements.flatMap(stmt => {
53
+ const name = declaredName(stmt.element);
54
+ if (!name || !outputs.has(`${name}Change`))
55
+ return [stmt];
56
+ const varDecl = stmt.element;
57
+ const modelCall = modelInvocation(varDecl);
58
+ if (!modelCall)
59
+ return [stmt];
60
+ const inputCall = toInputCall(modelCall, name);
61
+ if (!inputCall)
62
+ return [stmt];
63
+ changed = true;
64
+ const semicolon = (0, rewrite_1.markers)({ kind: 'org.openrewrite.java.marker.Semicolon', id: (0, rewrite_1.randomId)() });
65
+ return [
66
+ Object.assign(Object.assign({}, stmt), { element: withNameAndInitializer(varDecl, `${name}Input`, inputCall), markers: semicolon }),
67
+ Object.assign(Object.assign({}, stmt), { element: withNameAndInitializer(varDecl, name, linkedSignalCall(`${name}Input`)), markers: semicolon }),
68
+ ];
69
+ });
70
+ if (!changed)
71
+ return c;
72
+ (0, javascript_1.maybeAddImport)(this, { module: '@angular/core', member: 'input' });
73
+ (0, javascript_1.maybeAddImport)(this, { module: '@angular/core', member: 'linkedSignal' });
74
+ (0, javascript_1.maybeRemoveImport)(this, '@angular/core', 'model');
75
+ return (0, mutative_1.create)(c, (draft) => {
76
+ draft.body.statements = newStatements;
77
+ });
78
+ });
79
+ }
80
+ };
81
+ });
82
+ }
83
+ }
84
+ exports.MigrateModelWithOutput = MigrateModelWithOutput;
85
+ function declaredName(statement) {
86
+ if (statement.kind !== java_1.J.Kind.VariableDeclarations)
87
+ return undefined;
88
+ const variables = statement.variables;
89
+ if (variables.length !== 1)
90
+ return undefined;
91
+ const name = variables[0].element.name;
92
+ return (0, java_1.isIdentifier)(name) ? name.simpleName : undefined;
93
+ }
94
+ function declaresOutput(statement) {
95
+ if (statement.kind !== java_1.J.Kind.VariableDeclarations)
96
+ return false;
97
+ const varDecl = statement;
98
+ if (varDecl.leadingAnnotations.some(a => (0, java_1.isIdentifier)(a.annotationType)
99
+ && a.annotationType.simpleName === 'Output')) {
100
+ return true;
101
+ }
102
+ return !!factoryInvocation(varDecl, 'output');
103
+ }
104
+ function modelInvocation(varDecl) {
105
+ return factoryInvocation(varDecl, 'model');
106
+ }
107
+ /** Matches `factory(...)` and `factory.required(...)` initializers. */
108
+ function factoryInvocation(varDecl, factory) {
109
+ var _a, _b;
110
+ const initializer = (_b = (_a = varDecl.variables[0]) === null || _a === void 0 ? void 0 : _a.element.initializer) === null || _b === void 0 ? void 0 : _b.element;
111
+ if (!initializer || initializer.kind !== java_1.J.Kind.MethodInvocation)
112
+ return undefined;
113
+ const call = initializer;
114
+ if (!(0, java_1.isIdentifier)(call.name))
115
+ return undefined;
116
+ if (!call.select) {
117
+ return call.name.simpleName === factory ? call : undefined;
118
+ }
119
+ const select = call.select.element;
120
+ return call.name.simpleName === 'required' && (0, java_1.isIdentifier)(select) && select.simpleName === factory ? call : undefined;
121
+ }
122
+ /**
123
+ * Turns the `model()` call into the matching `input()` call, aliased back to the original
124
+ * property name so templates keep binding to it. Returns undefined when the options argument
125
+ * is something other than an object literal, which we cannot merge an alias into.
126
+ */
127
+ function toInputCall(modelCall, name) {
128
+ var _a, _b, _c;
129
+ const required = !!modelCall.select;
130
+ const args = ((_b = (_a = modelCall.arguments) === null || _a === void 0 ? void 0 : _a.elements) !== null && _b !== void 0 ? _b : []).filter(rp => rp.element.kind !== java_1.J.Kind.Empty);
131
+ const optionsIndex = required ? 0 : 1;
132
+ const options = (_c = args[optionsIndex]) === null || _c === void 0 ? void 0 : _c.element;
133
+ let newArgs;
134
+ if (!options) {
135
+ newArgs = [...args, (0, js_support_1.rightPadded)(Object.assign(Object.assign({}, (0, js_support_1.buildOptionsObject)([(0, js_support_1.buildPropertyAssignment)('alias', name)])), { prefix: args.length > 0 ? java_1.singleSpace : java_1.emptySpace }))];
136
+ }
137
+ else if (options.kind === java_1.J.Kind.NewClass && options.body) {
138
+ const body = options.body;
139
+ const properties = body.statements.filter(rp => rp.element.kind !== java_1.J.Kind.Empty);
140
+ const hasAlias = properties.some(rp => {
141
+ const element = rp.element;
142
+ if (element.kind !== javascript_1.JS.Kind.PropertyAssignment)
143
+ return false;
144
+ const propName = element.name.element;
145
+ return (0, java_1.isIdentifier)(propName) && propName.simpleName === 'alias';
146
+ });
147
+ if (hasAlias) {
148
+ newArgs = args;
149
+ }
150
+ else {
151
+ const withAlias = Object.assign(Object.assign({}, options), { body: Object.assign(Object.assign({}, body), { statements: [(0, js_support_1.rightPadded)((0, js_support_1.buildPropertyAssignment)('alias', name)), ...properties] }) });
152
+ newArgs = [...args];
153
+ newArgs[optionsIndex] = Object.assign(Object.assign({}, args[optionsIndex]), { element: withAlias });
154
+ }
155
+ }
156
+ else {
157
+ return undefined;
158
+ }
159
+ return Object.assign(Object.assign({}, modelCall), { select: required ? Object.assign(Object.assign({}, modelCall.select), { element: (0, js_support_1.identifier)('input') }) : undefined, name: required ? modelCall.name : (0, js_support_1.identifier)('input'), arguments: Object.assign(Object.assign({}, modelCall.arguments), { elements: newArgs }), methodType: undefined });
160
+ }
161
+ function linkedSignalCall(inputName) {
162
+ const thisAccess = {
163
+ kind: java_1.J.Kind.FieldAccess,
164
+ id: (0, rewrite_1.randomId)(),
165
+ prefix: java_1.emptySpace,
166
+ markers: rewrite_1.emptyMarkers,
167
+ target: (0, js_support_1.identifier)('this'),
168
+ name: { kind: java_1.J.Kind.LeftPadded, before: java_1.emptySpace, element: (0, js_support_1.identifier)(inputName), markers: rewrite_1.emptyMarkers },
169
+ type: undefined,
170
+ };
171
+ return {
172
+ kind: java_1.J.Kind.MethodInvocation,
173
+ id: (0, rewrite_1.randomId)(),
174
+ prefix: java_1.singleSpace,
175
+ markers: rewrite_1.emptyMarkers,
176
+ select: undefined,
177
+ typeParameters: undefined,
178
+ name: (0, js_support_1.identifier)('linkedSignal'),
179
+ arguments: {
180
+ kind: 'org.openrewrite.java.tree.JContainer',
181
+ before: java_1.emptySpace,
182
+ markers: rewrite_1.emptyMarkers,
183
+ elements: [(0, js_support_1.rightPadded)(thisAccess)],
184
+ },
185
+ methodType: undefined,
186
+ };
187
+ }
188
+ function withNameAndInitializer(varDecl, name, call) {
189
+ const namedVar = varDecl.variables[0].element;
190
+ return Object.assign(Object.assign({}, varDecl), { id: (0, rewrite_1.randomId)(), typeExpression: undefined, variables: [Object.assign(Object.assign({}, varDecl.variables[0]), { element: Object.assign(Object.assign({}, namedVar), { id: (0, rewrite_1.randomId)(), name: (0, js_support_1.identifier)(name, namedVar.name.prefix), dimensionsAfterName: [], initializer: { before: java_1.singleSpace, element: call, markers: rewrite_1.emptyMarkers } }) })] });
191
+ }
192
+ //# sourceMappingURL=migrate-model-with-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrate-model-with-output.js","sourceRoot":"","sources":["../../src/migration/migrate-model-with-output.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ class SuppressSafeNavigationDiagnostics extends rewrite_1.Recipe {
33
33
  return new class extends json_1.JsonVisitor {
34
34
  visitDocument(doc, p) {
35
35
  return __awaiter(this, void 0, void 0, function* () {
36
- if (!doc.sourcePath.endsWith('tsconfig.json'))
36
+ if (!(0, json_support_1.isRootTsconfig)(doc.sourcePath) && !(0, json_support_1.declaresAngularCompilerOptions)(doc))
37
37
  return doc;
38
38
  const root = doc.value;
39
39
  if (!(0, json_1.isObject)(root))
@@ -1 +1 @@
1
- {"version":3,"file":"suppress-safe-navigation-diagnostics.js","sourceRoot":"","sources":["../../src/migration/suppress-safe-navigation-diagnostics.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,kDAA2E;AAC3E,oDAAoF;AACpF,iDAAoE;AAEpE,MAAM,iBAAiB,GAAG,CAAC,8BAA8B,EAAE,0BAA0B,CAAC,CAAC;AAEvF,MAAa,iCAAkC,SAAQ,gBAAM;IAA7D;;QACa,SAAI,GAAG,wEAAwE,CAAC;QAChF,gBAAW,GAAW,mDAAmD,CAAC;QAC1E,gBAAW,GAAW,iGAAiG;YAC5H,iHAAiH;YACjH,mHAAmH,CAAC;IAwB5H,CAAC;IAtBS,MAAM;;YACR,OAAO,IAAI,KAAM,SAAQ,kBAA6B;gBAClC,aAAa,CAAC,GAAkB,EAAE,CAAmB;;wBACjE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;4BAAE,OAAO,GAAG,CAAC;wBAE1D,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC;wBACvB,IAAI,CAAC,IAAA,eAAQ,EAAC,IAAI,CAAC;4BAAE,OAAO,GAAG,CAAC;wBAEhC,MAAM,UAAU,GAAG,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;wBACrC,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBAE9C,IAAI,KAAK,GAAG,IAAI,CAAC;wBACjB,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;4BACpC,KAAK,GAAG,IAAA,4BAAa,EAAC,KAAK,EACvB,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAClE,IAAA,sBAAO,EAAC,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;wBAC/D,CAAC;wBAED,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gCAAI,GAAG,KAAE,KAAK,GAAkB,CAAC;oBACnE,CAAC;iBAAA;aACJ,EAAE,CAAC;QACR,CAAC;KAAA;CACJ;AA7BD,8EA6BC"}
1
+ {"version":3,"file":"suppress-safe-navigation-diagnostics.js","sourceRoot":"","sources":["../../src/migration/suppress-safe-navigation-diagnostics.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,kDAA2E;AAC3E,oDAAoF;AACpF,iDAAoH;AAEpH,MAAM,iBAAiB,GAAG,CAAC,8BAA8B,EAAE,0BAA0B,CAAC,CAAC;AAEvF,MAAa,iCAAkC,SAAQ,gBAAM;IAA7D;;QACa,SAAI,GAAG,wEAAwE,CAAC;QAChF,gBAAW,GAAW,mDAAmD,CAAC;QAC1E,gBAAW,GAAW,iGAAiG;YAC5H,iHAAiH;YACjH,mHAAmH,CAAC;IAwB5H,CAAC;IAtBS,MAAM;;YACR,OAAO,IAAI,KAAM,SAAQ,kBAA6B;gBAClC,aAAa,CAAC,GAAkB,EAAE,CAAmB;;wBACjE,IAAI,CAAC,IAAA,6BAAc,EAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAA,6CAA8B,EAAC,GAAG,CAAC;4BAAE,OAAO,GAAG,CAAC;wBAExF,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC;wBACvB,IAAI,CAAC,IAAA,eAAQ,EAAC,IAAI,CAAC;4BAAE,OAAO,GAAG,CAAC;wBAEhC,MAAM,UAAU,GAAG,IAAA,mBAAY,EAAC,GAAG,CAAC,CAAC;wBACrC,MAAM,MAAM,GAAG,IAAA,2BAAY,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBAE9C,IAAI,KAAK,GAAG,IAAI,CAAC;wBACjB,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;4BACpC,KAAK,GAAG,IAAA,4BAAa,EAAC,KAAK,EACvB,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,CAAC,EAClE,IAAA,sBAAO,EAAC,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;wBAC/D,CAAC;wBAED,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gCAAI,GAAG,KAAE,KAAK,GAAkB,CAAC;oBACnE,CAAC;iBAAA;aACJ,EAAE,CAAC;QACR,CAAC;KAAA;CACJ;AA7BD,8EA6BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-to-angular-22.d.ts","sourceRoot":"","sources":["../../src/migration/upgrade-to-angular-22.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAiB5C,qBAAa,6BAA8B,SAAQ,MAAM;IACrD,QAAQ,CAAC,IAAI,2DAA2D;IACxE,QAAQ,CAAC,WAAW,0CAA0C;IAC9D,QAAQ,CAAC,WAAW,SACkE;IAEhF,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAwBxC;AAED,qBAAa,kBAAmB,SAAQ,MAAM;IAC1C,QAAQ,CAAC,IAAI,gDAAgD;IAC7D,QAAQ,CAAC,WAAW,2BAA2B;IAC/C,QAAQ,CAAC,WAAW,SAIiB;IAE/B,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAgBxC"}
1
+ {"version":3,"file":"upgrade-to-angular-22.d.ts","sourceRoot":"","sources":["../../src/migration/upgrade-to-angular-22.ts"],"names":[],"mappings":"AAMA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAqB5C,qBAAa,6BAA8B,SAAQ,MAAM;IACrD,QAAQ,CAAC,IAAI,2DAA2D;IACxE,QAAQ,CAAC,WAAW,0CAA0C;IAC9D,QAAQ,CAAC,WAAW,SACkE;IAEhF,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CA6BxC;AAED,qBAAa,kBAAmB,SAAQ,MAAM;IAC1C,QAAQ,CAAC,IAAI,gDAAgD;IAC7D,QAAQ,CAAC,WAAW,2BAA2B;IAC/C,QAAQ,CAAC,WAAW,SAIiB;IAE/B,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAgBxC"}
@@ -29,6 +29,10 @@ const add_no_incremental_hydration_1 = require("./add-no-incremental-hydration")
29
29
  const add_strict_templates_false_1 = require("./add-strict-templates-false");
30
30
  const suppress_safe_navigation_diagnostics_1 = require("./suppress-safe-navigation-diagnostics");
31
31
  const add_with_xhr_1 = require("./add-with-xhr");
32
+ const add_trust_proxy_headers_1 = require("./add-trust-proxy-headers");
33
+ const add_istanbul_instrumenter_1 = require("./add-istanbul-instrumenter");
34
+ const migrate_model_with_output_1 = require("./migrate-model-with-output");
35
+ const find_template_safe_navigation_1 = require("../search/find-template-safe-navigation");
32
36
  const replace_create_ng_module_ref_1 = require("./replace-create-ng-module-ref");
33
37
  const rename_angular_js_globals_1 = require("./rename-angular-js-globals");
34
38
  class UpgradeToAngular22CodeChanges extends rewrite_1.Recipe {
@@ -49,6 +53,7 @@ class UpgradeToAngular22CodeChanges extends rewrite_1.Recipe {
49
53
  new find_can_match_usage_1.FindCanMatchUsage(),
50
54
  new find_http_xhr_backend_usage_1.FindHttpXhrBackendUsage(),
51
55
  new find_implicit_params_inheritance_1.FindImplicitParamsInheritance(),
56
+ new find_template_safe_navigation_1.FindTemplateSafeNavigation(),
52
57
  // Change detection defaults
53
58
  new add_eager_change_detection_1.AddEagerChangeDetection(),
54
59
  new rename_default_change_detection_1.RenameDefaultChangeDetection(),
@@ -59,7 +64,11 @@ class UpgradeToAngular22CodeChanges extends rewrite_1.Recipe {
59
64
  new add_no_incremental_hydration_1.AddNoIncrementalHydration(),
60
65
  new add_strict_templates_false_1.AddStrictTemplatesFalse(),
61
66
  new suppress_safe_navigation_diagnostics_1.SuppressSafeNavigationDiagnostics(),
67
+ // Server rendering and test tooling
68
+ new add_trust_proxy_headers_1.AddTrustProxyHeaders(),
69
+ new add_istanbul_instrumenter_1.AddIstanbulInstrumenter(),
62
70
  // Removed and deprecated APIs
71
+ new migrate_model_with_output_1.MigrateModelWithOutput(),
63
72
  new replace_create_ng_module_ref_1.ReplaceCreateNgModuleRef(),
64
73
  new rename_angular_js_globals_1.RenameAngularJsGlobals(),
65
74
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade-to-angular-22.js","sourceRoot":"","sources":["../../src/migration/upgrade-to-angular-22.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,kDAA4C;AAC5C,gEAAyE;AACzE,mEAAsE;AACtE,mFAA2E;AAC3E,uFAA8E;AAC9E,yEAAiE;AACjE,uFAA8E;AAC9E,iGAAyF;AACzF,6EAAqE;AACrE,uFAA+E;AAC/E,iFAAyE;AACzE,6EAAqE;AACrE,iGAAyF;AACzF,iDAA0C;AAC1C,iFAAwE;AACxE,2EAAmE;AAEnE,MAAa,6BAA8B,SAAQ,gBAAM;IAAzD;;QACa,SAAI,GAAG,uDAAuD,CAAC;QAC/D,gBAAW,GAAG,sCAAsC,CAAC;QACrD,gBAAW,GAAG,wFAAwF;YAC3G,iFAAiF,CAAC;IA0B1F,CAAC;IAxBS,UAAU;;YACZ,OAAO;gBACH,IAAI,qDAA6B,EAAE;gBACnC,+DAA+D;gBAC/D,IAAI,kDAAsB,EAAE;gBAC5B,IAAI,qDAAuB,EAAE;gBAC7B,IAAI,wCAAiB,EAAE;gBACvB,IAAI,qDAAuB,EAAE;gBAC7B,IAAI,gEAA6B,EAAE;gBACnC,4BAA4B;gBAC5B,IAAI,oDAAuB,EAAE;gBAC7B,IAAI,8DAA4B,EAAE;gBAClC,2FAA2F;gBAC3F,sFAAsF;gBACtF,IAAI,yBAAU,EAAE;gBAChB,gDAAgD;gBAChD,IAAI,wDAAyB,EAAE;gBAC/B,IAAI,oDAAuB,EAAE;gBAC7B,IAAI,wEAAiC,EAAE;gBACvC,8BAA8B;gBAC9B,IAAI,uDAAwB,EAAE;gBAC9B,IAAI,kDAAsB,EAAE;aAC/B,CAAC;QACN,CAAC;KAAA;CACJ;AA9BD,sEA8BC;AAED,MAAa,kBAAmB,SAAQ,gBAAM;IAA9C;;QACa,SAAI,GAAG,4CAA4C,CAAC;QACpD,gBAAW,GAAG,uBAAuB,CAAC;QACtC,gBAAW,GAAG,oDAAoD;YACvE,kGAAkG;YAClG,wGAAwG;YACxG,uGAAuG;YACvG,gCAAgC,CAAC;IAkBzC,CAAC;IAhBS,UAAU;;YACZ,OAAO;gBACH,IAAI,6BAA6B,EAAE;gBACnC,wBAAwB;gBACxB,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAClF,yFAAyF;gBACzF,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBACzF,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAC1F,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,+BAA+B,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAClG,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,4BAA4B,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;gBACtG,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,+BAA+B,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;gBACtG,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBACxF,aAAa;gBACb,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAC,CAAC;aACnF,CAAC;QACN,CAAC;KAAA;CACJ;AAzBD,gDAyBC"}
1
+ {"version":3,"file":"upgrade-to-angular-22.js","sourceRoot":"","sources":["../../src/migration/upgrade-to-angular-22.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,kDAA4C;AAC5C,gEAAyE;AACzE,mEAAsE;AACtE,mFAA2E;AAC3E,uFAA8E;AAC9E,yEAAiE;AACjE,uFAA8E;AAC9E,iGAAyF;AACzF,6EAAqE;AACrE,uFAA+E;AAC/E,iFAAyE;AACzE,6EAAqE;AACrE,iGAAyF;AACzF,iDAA0C;AAC1C,uEAA+D;AAC/D,2EAAoE;AACpE,2EAAmE;AACnE,2FAAmF;AACnF,iFAAwE;AACxE,2EAAmE;AAEnE,MAAa,6BAA8B,SAAQ,gBAAM;IAAzD;;QACa,SAAI,GAAG,uDAAuD,CAAC;QAC/D,gBAAW,GAAG,sCAAsC,CAAC;QACrD,gBAAW,GAAG,wFAAwF;YAC3G,iFAAiF,CAAC;IA+B1F,CAAC;IA7BS,UAAU;;YACZ,OAAO;gBACH,IAAI,qDAA6B,EAAE;gBACnC,+DAA+D;gBAC/D,IAAI,kDAAsB,EAAE;gBAC5B,IAAI,qDAAuB,EAAE;gBAC7B,IAAI,wCAAiB,EAAE;gBACvB,IAAI,qDAAuB,EAAE;gBAC7B,IAAI,gEAA6B,EAAE;gBACnC,IAAI,0DAA0B,EAAE;gBAChC,4BAA4B;gBAC5B,IAAI,oDAAuB,EAAE;gBAC7B,IAAI,8DAA4B,EAAE;gBAClC,2FAA2F;gBAC3F,sFAAsF;gBACtF,IAAI,yBAAU,EAAE;gBAChB,gDAAgD;gBAChD,IAAI,wDAAyB,EAAE;gBAC/B,IAAI,oDAAuB,EAAE;gBAC7B,IAAI,wEAAiC,EAAE;gBACvC,oCAAoC;gBACpC,IAAI,8CAAoB,EAAE;gBAC1B,IAAI,mDAAuB,EAAE;gBAC7B,8BAA8B;gBAC9B,IAAI,kDAAsB,EAAE;gBAC5B,IAAI,uDAAwB,EAAE;gBAC9B,IAAI,kDAAsB,EAAE;aAC/B,CAAC;QACN,CAAC;KAAA;CACJ;AAnCD,sEAmCC;AAED,MAAa,kBAAmB,SAAQ,gBAAM;IAA9C;;QACa,SAAI,GAAG,4CAA4C,CAAC;QACpD,gBAAW,GAAG,uBAAuB,CAAC;QACtC,gBAAW,GAAG,oDAAoD;YACvE,kGAAkG;YAClG,wGAAwG;YACxG,uGAAuG;YACvG,gCAAgC,CAAC;IAkBzC,CAAC;IAhBS,UAAU;;YACZ,OAAO;gBACH,IAAI,6BAA6B,EAAE;gBACnC,wBAAwB;gBACxB,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAClF,yFAAyF;gBACzF,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBACzF,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAC1F,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,+BAA+B,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBAClG,MAAM,IAAA,qCAAwB,EAAC,EAAC,cAAc,EAAE,4BAA4B,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;gBACtG,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,+BAA+B,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;gBACtG,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAC,CAAC;gBACxF,aAAa;gBACb,MAAM,IAAA,qCAAwB,EAAC,EAAC,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAC,CAAC;aACnF,CAAC;QACN,CAAC;KAAA;CACJ;AAzBD,gDAyBC"}
@@ -0,0 +1,8 @@
1
+ import { Recipe } from "@openrewrite/rewrite";
2
+ export declare class FindTemplateSafeNavigation extends Recipe {
3
+ readonly name = "org.openrewrite.angular.search.find-template-safe-navigation";
4
+ readonly displayName: string;
5
+ readonly description: string;
6
+ recipeList(): Promise<Recipe[]>;
7
+ }
8
+ //# sourceMappingURL=find-template-safe-navigation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-template-safe-navigation.d.ts","sourceRoot":"","sources":["../../src/search/find-template-safe-navigation.ts"],"names":[],"mappings":"AAMA,OAAO,EAAsC,MAAM,EAAc,MAAM,sBAAsB,CAAC;AAY9F,qBAAa,0BAA2B,SAAQ,MAAM;IAClD,QAAQ,CAAC,IAAI,kEAAkE;IAC/E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAA+C;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAGiB;IAEvC,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAGxC"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2026 the original author or authors.
4
+ *
5
+ * Moderne Proprietary. Only for use by Moderne customers under the terms of a commercial contract.
6
+ */
7
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
9
+ return new (P || (P = Promise))(function (resolve, reject) {
10
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
11
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
12
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
13
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
14
+ });
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.FindTemplateSafeNavigation = void 0;
18
+ const rewrite_1 = require("@openrewrite/rewrite");
19
+ const text_1 = require("@openrewrite/rewrite/text");
20
+ const javascript_1 = require("@openrewrite/rewrite/javascript");
21
+ const java_1 = require("@openrewrite/rewrite/java");
22
+ const MESSAGE = "Safe navigation in an Angular template returns undefined rather than null as of Angular 22. " +
23
+ "Review bindings that distinguish the two, such as comparisons against null and pipes that treat null and " +
24
+ "undefined differently. See https://angular.dev/errors/safe-navigation-undefined";
25
+ /** `{{ a?.b }}`, `[x]="a?.b"`, and `@if (a?.b)`, but not `a ?? b` or the `?.` of a TypeScript expression. */
26
+ const SAFE_NAVIGATION = /\?\.(?![.\d])/;
27
+ class FindTemplateSafeNavigation extends rewrite_1.Recipe {
28
+ constructor() {
29
+ super(...arguments);
30
+ this.name = "org.openrewrite.angular.search.find-template-safe-navigation";
31
+ this.displayName = "Find safe navigation in Angular templates";
32
+ this.description = "Finds `?.` in HTML templates and in inline `template` metadata. Angular 22 changed " +
33
+ "safe navigation in templates to return `undefined` instead of `null`, which changes bindings that tell the two " +
34
+ "apart. Angular ships a `$safeNavigationMigration()` wrapper for this; this recipe reports the templates to review " +
35
+ "rather than rewriting the expressions.";
36
+ }
37
+ recipeList() {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ return [new FindHtmlSafeNavigation(), new FindInlineTemplateSafeNavigation()];
40
+ });
41
+ }
42
+ }
43
+ exports.FindTemplateSafeNavigation = FindTemplateSafeNavigation;
44
+ class FindHtmlSafeNavigation extends rewrite_1.Recipe {
45
+ constructor() {
46
+ super(...arguments);
47
+ this.name = "org.openrewrite.angular.search.find-template-safe-navigation.html";
48
+ this.displayName = "Find safe navigation in HTML templates";
49
+ this.description = "Finds `?.` in `.html` templates.";
50
+ }
51
+ editor() {
52
+ return __awaiter(this, void 0, void 0, function* () {
53
+ return new class extends text_1.PlainTextVisitor {
54
+ visitText(text, p) {
55
+ const _super = Object.create(null, {
56
+ visitText: { get: () => super.visitText }
57
+ });
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ const t = yield _super.visitText.call(this, text, p);
60
+ if (!t || !t.sourcePath.endsWith('.html'))
61
+ return t;
62
+ if (!SAFE_NAVIGATION.test(t.text))
63
+ return t;
64
+ return (0, rewrite_1.foundSearchResult)(t, MESSAGE);
65
+ });
66
+ }
67
+ }();
68
+ });
69
+ }
70
+ }
71
+ class FindInlineTemplateSafeNavigation extends rewrite_1.Recipe {
72
+ constructor() {
73
+ super(...arguments);
74
+ this.name = "org.openrewrite.angular.search.find-template-safe-navigation.inline";
75
+ this.displayName = "Find safe navigation in inline templates";
76
+ this.description = "Finds `?.` in inline `template` metadata of `@Component` decorators.";
77
+ }
78
+ editor() {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ return new class extends javascript_1.JavaScriptVisitor {
81
+ visitPropertyAssignment(property, p) {
82
+ const _super = Object.create(null, {
83
+ visitPropertyAssignment: { get: () => super.visitPropertyAssignment }
84
+ });
85
+ return __awaiter(this, void 0, void 0, function* () {
86
+ var _a, _b;
87
+ const prop = yield _super.visitPropertyAssignment.call(this, property, p);
88
+ if (!prop)
89
+ return prop;
90
+ const name = (_a = prop.name) === null || _a === void 0 ? void 0 : _a.element;
91
+ if (!(0, java_1.isIdentifier)(name) || name.simpleName !== 'template')
92
+ return prop;
93
+ const initializer = prop.initializer;
94
+ if (!initializer || !(0, java_1.isLiteral)(initializer))
95
+ return prop;
96
+ if (!SAFE_NAVIGATION.test((_b = initializer.valueSource) !== null && _b !== void 0 ? _b : ''))
97
+ return prop;
98
+ return (0, rewrite_1.foundSearchResult)(prop, MESSAGE);
99
+ });
100
+ }
101
+ }();
102
+ });
103
+ }
104
+ }
105
+ //# sourceMappingURL=find-template-safe-navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find-template-safe-navigation.js","sourceRoot":"","sources":["../../src/search/find-template-safe-navigation.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;AAEH,kDAA8F;AAC9F,oDAAsE;AACtE,gEAAkE;AAClE,oDAAqE;AAErE,MAAM,OAAO,GAAG,8FAA8F;IAC1G,2GAA2G;IAC3G,iFAAiF,CAAC;AAEtF,6GAA6G;AAC7G,MAAM,eAAe,GAAG,eAAe,CAAC;AAExC,MAAa,0BAA2B,SAAQ,gBAAM;IAAtD;;QACa,SAAI,GAAG,8DAA8D,CAAC;QACtE,gBAAW,GAAW,2CAA2C,CAAC;QAClE,gBAAW,GAAW,qFAAqF;YAChH,iHAAiH;YACjH,oHAAoH;YACpH,wCAAwC,CAAC;IAKjD,CAAC;IAHS,UAAU;;YACZ,OAAO,CAAC,IAAI,sBAAsB,EAAE,EAAE,IAAI,gCAAgC,EAAE,CAAC,CAAC;QAClF,CAAC;KAAA;CACJ;AAXD,gEAWC;AAED,MAAM,sBAAuB,SAAQ,gBAAM;IAA3C;;QACa,SAAI,GAAG,mEAAmE,CAAC;QAC3E,gBAAW,GAAW,wCAAwC,CAAC;QAC/D,gBAAW,GAAW,kCAAkC,CAAC;IAatE,CAAC;IAXS,MAAM;;YACR,OAAO,IAAI,KAAM,SAAQ,uBAAkC;gBACxC,SAAS,CAAC,IAAe,EAAE,CAAmB;;;;;wBACzD,MAAM,CAAC,GAAG,MAAM,OAAM,SAAS,YAAC,IAAI,EAAE,CAAC,CAAc,CAAC;wBACtD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;4BAAE,OAAO,CAAC,CAAC;wBACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;4BAAE,OAAO,CAAC,CAAC;wBAE5C,OAAO,IAAA,2BAAiB,EAAC,CAAC,EAAE,OAAO,CAAC,CAAC;oBACzC,CAAC;iBAAA;aACJ,EAAE,CAAC;QACR,CAAC;KAAA;CACJ;AAED,MAAM,gCAAiC,SAAQ,gBAAM;IAArD;;QACa,SAAI,GAAG,qEAAqE,CAAC;QAC7E,gBAAW,GAAW,0CAA0C,CAAC;QACjE,gBAAW,GAAW,sEAAsE,CAAC;IAmB1G,CAAC;IAjBS,MAAM;;YACR,OAAO,IAAI,KAAM,SAAQ,8BAAmC;gBACxC,uBAAuB,CAAC,QAAa,EAAE,CAAmB;;;;;;wBACtE,MAAM,IAAI,GAAG,MAAM,OAAM,uBAAuB,YAAC,QAAQ,EAAE,CAAC,CAAQ,CAAC;wBACrE,IAAI,CAAC,IAAI;4BAAE,OAAO,IAAI,CAAC;wBAEvB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,OAAO,CAAC;wBAChC,IAAI,CAAC,IAAA,mBAAY,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU;4BAAE,OAAO,IAAI,CAAC;wBAEvE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;wBACrC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAA,gBAAS,EAAC,WAAW,CAAC;4BAAE,OAAO,IAAI,CAAC;wBACzD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAA,WAAW,CAAC,WAAW,mCAAI,EAAE,CAAC;4BAAE,OAAO,IAAI,CAAC;wBAEtE,OAAO,IAAA,2BAAiB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC5C,CAAC;iBAAA;aACJ,EAAE,CAAC;QACR,CAAC;KAAA;CACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openrewrite/recipes-angular",
3
- "version": "1.9.0-20260804-204521",
3
+ "version": "1.9.0-20260804-210913",
4
4
  "license": "Moderne Proprietary",
5
5
  "description": "OpenRewrite recipes for Angular.",
6
6
  "homepage": "https://github.com/openrewrite/rewrite",
package/src/index.ts CHANGED
@@ -120,6 +120,10 @@ import {AddStrictTemplatesFalse} from './migration/add-strict-templates-false';
120
120
  import {SuppressSafeNavigationDiagnostics} from './migration/suppress-safe-navigation-diagnostics';
121
121
  import {RemoveWithFetch} from './migration/remove-with-fetch';
122
122
  import {AddWithXhr} from './migration/add-with-xhr';
123
+ import {AddTrustProxyHeaders} from './migration/add-trust-proxy-headers';
124
+ import {AddIstanbulInstrumenter} from './migration/add-istanbul-instrumenter';
125
+ import {MigrateModelWithOutput} from './migration/migrate-model-with-output';
126
+ import {FindTemplateSafeNavigation} from './search/find-template-safe-navigation';
123
127
  import {ReplaceCreateNgModuleRef} from './migration/replace-create-ng-module-ref';
124
128
  import {RenameAngularJsGlobals} from './migration/rename-angular-js-globals';
125
129
  import {UpgradeToPrimeNG18} from './libraries/primeng/18/upgrade-to-primeng-18';
@@ -265,6 +269,10 @@ export async function activate(marketplace: RecipeMarketplace) {
265
269
  await marketplace.install(SuppressSafeNavigationDiagnostics, AngularMigration);
266
270
  await marketplace.install(RemoveWithFetch, AngularMigration);
267
271
  await marketplace.install(AddWithXhr, AngularMigration);
272
+ await marketplace.install(AddTrustProxyHeaders, AngularMigration);
273
+ await marketplace.install(AddIstanbulInstrumenter, AngularMigration);
274
+ await marketplace.install(MigrateModelWithOutput, AngularMigration);
275
+ await marketplace.install(FindTemplateSafeNavigation, AngularSearch);
268
276
  await marketplace.install(ReplaceCreateNgModuleRef, AngularMigration);
269
277
  await marketplace.install(RenameAngularJsGlobals, AngularMigration);
270
278
  // PrimeNG
@@ -405,6 +413,10 @@ export {AddStrictTemplatesFalse} from './migration/add-strict-templates-false';
405
413
  export {SuppressSafeNavigationDiagnostics} from './migration/suppress-safe-navigation-diagnostics';
406
414
  export {RemoveWithFetch} from './migration/remove-with-fetch';
407
415
  export {AddWithXhr} from './migration/add-with-xhr';
416
+ export {AddTrustProxyHeaders} from './migration/add-trust-proxy-headers';
417
+ export {AddIstanbulInstrumenter} from './migration/add-istanbul-instrumenter';
418
+ export {MigrateModelWithOutput} from './migration/migrate-model-with-output';
419
+ export {FindTemplateSafeNavigation} from './search/find-template-safe-navigation';
408
420
  export {ReplaceCreateNgModuleRef} from './migration/replace-create-ng-module-ref';
409
421
  export {RenameAngularJsGlobals} from './migration/rename-angular-js-globals';
410
422
  // PrimeNG