@openrewrite/rewrite 8.67.0-20251120-102936 → 8.67.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/dist/index.d.ts.map +1 -1
  2. package/dist/index.js +2 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/java/tree.d.ts +7 -1
  5. package/dist/java/tree.d.ts.map +1 -1
  6. package/dist/java/tree.js +13 -3
  7. package/dist/java/tree.js.map +1 -1
  8. package/dist/javascript/add-import.d.ts.map +1 -1
  9. package/dist/javascript/add-import.js +200 -44
  10. package/dist/javascript/add-import.js.map +1 -1
  11. package/dist/javascript/cleanup/index.d.ts +2 -0
  12. package/dist/javascript/cleanup/index.d.ts.map +1 -0
  13. package/dist/javascript/cleanup/index.js +21 -0
  14. package/dist/javascript/cleanup/index.js.map +1 -0
  15. package/dist/javascript/cleanup/use-object-property-shorthand.d.ts +22 -0
  16. package/dist/javascript/cleanup/use-object-property-shorthand.d.ts.map +1 -0
  17. package/dist/javascript/cleanup/use-object-property-shorthand.js +144 -0
  18. package/dist/javascript/cleanup/use-object-property-shorthand.js.map +1 -0
  19. package/dist/javascript/comparator.d.ts +8 -0
  20. package/dist/javascript/comparator.d.ts.map +1 -1
  21. package/dist/javascript/comparator.js +12 -0
  22. package/dist/javascript/comparator.js.map +1 -1
  23. package/dist/javascript/dependency-workspace.d.ts +1 -0
  24. package/dist/javascript/dependency-workspace.d.ts.map +1 -1
  25. package/dist/javascript/dependency-workspace.js +44 -0
  26. package/dist/javascript/dependency-workspace.js.map +1 -1
  27. package/dist/javascript/parser.d.ts.map +1 -1
  28. package/dist/javascript/parser.js +21 -1
  29. package/dist/javascript/parser.js.map +1 -1
  30. package/dist/javascript/print.d.ts +1 -0
  31. package/dist/javascript/print.d.ts.map +1 -1
  32. package/dist/javascript/print.js +8 -0
  33. package/dist/javascript/print.js.map +1 -1
  34. package/dist/javascript/rpc.js +14 -0
  35. package/dist/javascript/rpc.js.map +1 -1
  36. package/dist/javascript/templating/pattern.d.ts +7 -0
  37. package/dist/javascript/templating/pattern.d.ts.map +1 -1
  38. package/dist/javascript/templating/pattern.js +10 -0
  39. package/dist/javascript/templating/pattern.js.map +1 -1
  40. package/dist/javascript/templating/rewrite.d.ts.map +1 -1
  41. package/dist/javascript/templating/rewrite.js +17 -16
  42. package/dist/javascript/templating/rewrite.js.map +1 -1
  43. package/dist/javascript/templating/types.d.ts +56 -28
  44. package/dist/javascript/templating/types.d.ts.map +1 -1
  45. package/dist/javascript/tree.d.ts +9 -0
  46. package/dist/javascript/tree.d.ts.map +1 -1
  47. package/dist/javascript/tree.js +1 -0
  48. package/dist/javascript/tree.js.map +1 -1
  49. package/dist/javascript/type-mapping.d.ts +13 -1
  50. package/dist/javascript/type-mapping.d.ts.map +1 -1
  51. package/dist/javascript/type-mapping.js +215 -8
  52. package/dist/javascript/type-mapping.js.map +1 -1
  53. package/dist/javascript/visitor.d.ts +1 -0
  54. package/dist/javascript/visitor.d.ts.map +1 -1
  55. package/dist/javascript/visitor.js +11 -0
  56. package/dist/javascript/visitor.js.map +1 -1
  57. package/dist/json/parser.js +18 -2
  58. package/dist/json/parser.js.map +1 -1
  59. package/dist/version.txt +1 -1
  60. package/package.json +1 -1
  61. package/src/index.ts +3 -0
  62. package/src/java/tree.ts +7 -1
  63. package/src/javascript/add-import.ts +211 -53
  64. package/src/javascript/cleanup/index.ts +17 -0
  65. package/src/javascript/cleanup/use-object-property-shorthand.ts +154 -0
  66. package/src/javascript/comparator.ts +11 -0
  67. package/src/javascript/dependency-workspace.ts +52 -0
  68. package/src/javascript/parser.ts +23 -1
  69. package/src/javascript/print.ts +7 -0
  70. package/src/javascript/rpc.ts +12 -0
  71. package/src/javascript/templating/pattern.ts +11 -0
  72. package/src/javascript/templating/rewrite.ts +19 -18
  73. package/src/javascript/templating/types.ts +60 -28
  74. package/src/javascript/tree.ts +10 -0
  75. package/src/javascript/type-mapping.ts +239 -9
  76. package/src/javascript/visitor.ts +10 -0
  77. package/src/json/parser.ts +16 -2
@@ -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,CAStE"}
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,CAYtE"}
package/dist/index.js CHANGED
@@ -62,11 +62,13 @@ 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
66
  registry.register(ExportAssignmentToExportDefault);
66
67
  registry.register(OrderImports);
67
68
  registry.register(ModernizeOctalEscapeSequences);
68
69
  registry.register(ModernizeOctalLiterals);
69
70
  registry.register(RemoveDuplicateObjectKeys);
71
+ registry.register(UseObjectPropertyShorthand);
70
72
  });
71
73
  }
72
74
  rpc_1.RpcCodecs.registerCodec(markers_1.MarkersKind.ParseExceptionResult, {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,4BASC;AA7CD;;;;;;;;;;;;;;GAcG;AACH,+BAA+D;AAC/D,iCAAsD;AACtD,uCAA4D;AAG5D,+CAA6B;AAC7B,8CAA4B;AAC5B,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB;AACxB,yCAAuB;AACvB,4CAA0B;AAC1B,2CAAyB;AACzB,gDAA8B;AAC9B,kDAAgC;AAChC,yCAAuB;AACvB,yCAAuB;AACvB,2CAAyB;AACzB,wCAAsB;AAEtB,uCAAuC;AACvC,SAAsB,QAAQ,CAAC,QAAwB;;QACnD,MAAM,EAAC,YAAY,EAAC,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzD,MAAM,EAAC,6BAA6B,EAAE,sBAAsB,EAAE,yBAAyB,EAAC,GAAG,MAAM,MAAM,CAAC,mCAAmC,CAAC,CAAC;QAC7I,MAAM,EAAC,+BAA+B,EAAC,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;QACnG,QAAQ,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;QACnD,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAChC,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;QACjD,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC1C,QAAQ,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;IACjD,CAAC;CAAA;AAED,eAAS,CAAC,aAAa,CAAC,qBAAW,CAAC,oBAAoB,EAAE;IAChD,OAAO,CAAC,KAA2B,EAAE,CAAe;;YACtD,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;KAAA;IACK,UAAU,CAAC,MAA4B,EAAE,CAAkB;;YAC7D,MAAM,KAAK,GAAgC,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC;YAC/D,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACtD,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5D,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChD,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClD,OAAO,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;KAAA;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,4BAYC;AAhDD;;;;;;;;;;;;;;GAcG;AACH,+BAA+D;AAC/D,iCAAsD;AACtD,uCAA4D;AAG5D,+CAA6B;AAC7B,8CAA4B;AAC5B,4CAA0B;AAC1B,0CAAwB;AACxB,0CAAwB;AACxB,yCAAuB;AACvB,4CAA0B;AAC1B,2CAAyB;AACzB,gDAA8B;AAC9B,kDAAgC;AAChC,yCAAuB;AACvB,yCAAuB;AACvB,2CAAyB;AACzB,wCAAsB;AAEtB,uCAAuC;AACvC,SAAsB,QAAQ,CAAC,QAAwB;;QACnD,MAAM,EAAC,YAAY,EAAC,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACzD,MAAM,EAAC,6BAA6B,EAAE,sBAAsB,EAAE,yBAAyB,EAAC,GAAG,MAAM,MAAM,CAAC,mCAAmC,CAAC,CAAC;QAC7I,MAAM,EAAC,+BAA+B,EAAC,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;QACnG,MAAM,EAAC,0BAA0B,EAAC,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;QAEnF,QAAQ,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;QACnD,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QAChC,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;QACjD,QAAQ,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC1C,QAAQ,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAC7C,QAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;IAClD,CAAC;CAAA;AAED,eAAS,CAAC,aAAa,CAAC,qBAAW,CAAC,oBAAoB,EAAE;IAChD,OAAO,CAAC,KAA2B,EAAE,CAAe;;YACtD,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrC,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;KAAA;IACK,UAAU,CAAC,MAA4B,EAAE,CAAkB;;YAC7D,MAAM,KAAK,GAAgC,IAAA,mBAAW,EAAC,MAAM,CAAC,CAAC;YAC/D,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACtD,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC5D,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAChD,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClD,OAAO,IAAA,mBAAW,EAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;KAAA;CACJ,CAAC,CAAC"}
@@ -11,6 +11,7 @@ export declare namespace J {
11
11
  };
12
12
  }
13
13
  export interface Expression extends J {
14
+ readonly type?: Type;
14
15
  }
15
16
  export interface MethodCall extends Expression {
16
17
  readonly methodType?: Type.Method;
@@ -680,15 +681,20 @@ export interface TextComment extends Comment {
680
681
  }
681
682
  export interface DocComment extends Comment {
682
683
  }
683
- export declare const isClassDeclaration: (n: any) => n is J.ClassDeclaration;
684
+ export declare const isBinary: (n: any) => n is J.Binary;
684
685
  export declare const isBlock: (n: any) => n is J.Block;
686
+ export declare const isClassDeclaration: (n: any) => n is J.ClassDeclaration;
687
+ export declare const isFieldAccess: (n: any) => n is J.FieldAccess;
685
688
  export declare const isIdentifier: (tree: any) => tree is J.Identifier;
686
689
  export declare const isIf: (tree: any) => tree is J.If;
690
+ export declare const isImport: (tree: any) => tree is J.Import;
687
691
  export declare const isLambda: (tree: any) => tree is J.Lambda;
688
692
  export declare const isLiteral: (tree: any) => tree is J.Literal;
689
693
  export declare const isMethodDeclaration: (n: any) => n is J.MethodDeclaration;
690
694
  export declare const isMethodInvocation: (n: any) => n is J.MethodInvocation;
695
+ export declare const isNamedVariable: (n: any) => n is J.VariableDeclarations.NamedVariable;
691
696
  export declare const isNewClass: (n: any) => n is J.NewClass;
697
+ export declare const isReturn: (n: any) => n is J.Return;
692
698
  export declare const isVariableDeclarations: (n: any) => n is J.VariableDeclarations;
693
699
  export declare function rightPadded<T extends J | boolean>(t: T, trailing: J.Space, markers?: Markers): J.RightPadded<T>;
694
700
  export declare namespace TypedTree {
@@ -1 +1 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/java/tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/java/tree.ts"],"names":[],"mappings":"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"}
package/dist/java/tree.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // noinspection JSUnusedGlobalSymbols
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.TypedTree = exports.isVariableDeclarations = exports.isNewClass = exports.isMethodInvocation = exports.isMethodDeclaration = exports.isLiteral = exports.isLambda = exports.isIf = exports.isIdentifier = exports.isBlock = exports.isClassDeclaration = exports.singleSpace = exports.emptySpace = exports.J = void 0;
4
+ exports.TypedTree = exports.isVariableDeclarations = exports.isReturn = exports.isNewClass = exports.isNamedVariable = exports.isMethodInvocation = exports.isMethodDeclaration = exports.isLiteral = exports.isLambda = exports.isImport = exports.isIf = exports.isIdentifier = exports.isFieldAccess = exports.isClassDeclaration = exports.isBlock = exports.isBinary = exports.singleSpace = exports.emptySpace = exports.J = void 0;
5
5
  exports.isSpace = isSpace;
6
6
  exports.space = space;
7
7
  exports.emptyContainer = emptyContainer;
@@ -260,14 +260,20 @@ function emptyContainer() {
260
260
  markers: markers_1.emptyMarkers,
261
261
  };
262
262
  }
263
- const isClassDeclaration = (n) => n.kind === J.Kind.ClassDeclaration;
264
- exports.isClassDeclaration = isClassDeclaration;
263
+ const isBinary = (n) => n.kind === J.Kind.Binary;
264
+ exports.isBinary = isBinary;
265
265
  const isBlock = (n) => n.kind === J.Kind.Block;
266
266
  exports.isBlock = isBlock;
267
+ const isClassDeclaration = (n) => n.kind === J.Kind.ClassDeclaration;
268
+ exports.isClassDeclaration = isClassDeclaration;
269
+ const isFieldAccess = (n) => n.kind === J.Kind.FieldAccess;
270
+ exports.isFieldAccess = isFieldAccess;
267
271
  const isIdentifier = (tree) => tree["kind"] === J.Kind.Identifier;
268
272
  exports.isIdentifier = isIdentifier;
269
273
  const isIf = (tree) => tree["kind"] === J.Kind.If;
270
274
  exports.isIf = isIf;
275
+ const isImport = (tree) => tree["kind"] === J.Kind.Import;
276
+ exports.isImport = isImport;
271
277
  const isLambda = (tree) => tree["kind"] === J.Kind.Lambda;
272
278
  exports.isLambda = isLambda;
273
279
  const isLiteral = (tree) => tree["kind"] === J.Kind.Literal;
@@ -276,8 +282,12 @@ const isMethodDeclaration = (n) => n.kind === J.Kind.MethodDeclaration;
276
282
  exports.isMethodDeclaration = isMethodDeclaration;
277
283
  const isMethodInvocation = (n) => n.kind === J.Kind.MethodInvocation;
278
284
  exports.isMethodInvocation = isMethodInvocation;
285
+ const isNamedVariable = (n) => n.kind === J.Kind.NamedVariable;
286
+ exports.isNamedVariable = isNamedVariable;
279
287
  const isNewClass = (n) => n.kind === J.Kind.NewClass;
280
288
  exports.isNewClass = isNewClass;
289
+ const isReturn = (n) => n.kind === J.Kind.Return;
290
+ exports.isReturn = isReturn;
281
291
  const isVariableDeclarations = (n) => n.kind === J.Kind.VariableDeclarations;
282
292
  exports.isVariableDeclarations = isVariableDeclarations;
283
293
  function rightPadded(t, trailing, markers) {
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/java/tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/java/tree.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add-import.d.ts","sourceRoot":"","sources":["../../src/javascript/add-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAC,CAAC,EAA+D,MAAM,SAAS,CAAC;AACxF,OAAO,EAAC,EAAE,EAAC,MAAM,QAAQ,CAAC;AAK1B,oBAAY,WAAW;IACnB,QAAQ,IAAA,CAAO,6BAA6B;IAC5C,YAAY,IAAA,CAAG,8BAA8B;IAC7C,UAAU,IAAA,CAAK,yBAAyB;IACxC,QAAQ,IAAA;CACX;AAED,MAAM,WAAW,gBAAgB;IAC7B,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;;;mDAO+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;mDAE+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;mDAC+C;IAC/C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;2EACuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,kGAAkG;IAClG,KAAK,CAAC,EAAE,WAAW,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAC/B,OAAO,EAAE,gBAAgB,QAY5B;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;gBAEjB,OAAO,EAAE,gBAAgB;IAkCrC;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkH5B;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAiDzB,sBAAsB,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAoGxG;;OAEG;YACW,0BAA0B;IAyExC;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmFxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;OAEG;YACW,yBAAyB;IAsEvC;;OAEG;YACW,qBAAqB;IAwInC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgE7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,cAAc;CAUzB"}
1
+ {"version":3,"file":"add-import.d.ts","sourceRoot":"","sources":["../../src/javascript/add-import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAa,CAAC,EAAmD,MAAM,SAAS,CAAC;AACxF,OAAO,EAAC,EAAE,EAAC,MAAM,QAAQ,CAAC;AAI1B,oBAAY,WAAW;IACnB,QAAQ,IAAA,CAAO,6BAA6B;IAC5C,YAAY,IAAA,CAAG,8BAA8B;IAC7C,UAAU,IAAA,CAAK,yBAAyB;IACxC,QAAQ,IAAA;CACX;AAED,MAAM,WAAW,gBAAgB;IAC7B,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;;;mDAO+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;mDAE+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;mDAC+C;IAC/C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;2EACuE;IACvE,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,kGAAkG;IAClG,KAAK,CAAC,EAAE,WAAW,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,EAC/B,OAAO,EAAE,gBAAgB,QAY5B;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IAClD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;gBAEjB,OAAO,EAAE,gBAAgB;IAkCrC;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkH5B;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAiDzB,sBAAsB,CAAC,eAAe,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAoGxG;;OAEG;YACW,0BAA0B;IAwGxC;;OAEG;YACW,iBAAiB;IAuB/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmFxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;OAEG;YACW,yBAAyB;IAqMvC;;OAEG;YACW,qBAAqB;IAyInC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAgE7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,cAAc;CAUzB"}
@@ -376,15 +376,48 @@ class AddImport extends visitor_1.JavaScriptVisitor {
376
376
  // We found a matching import with named bindings - merge into it
377
377
  return this.produceJavaScript(compilationUnit, p, (draft) => __awaiter(this, void 0, void 0, function* () {
378
378
  const namedImports = importClause.namedBindings;
379
- // Create the new specifier with a space prefix (since it's not the first element)
380
- const newSpecifierBase = this.createImportSpecifier();
381
- const newSpecifier = Object.assign(Object.assign({}, newSpecifierBase), { prefix: java_1.singleSpace });
382
- // Add the new specifier to the elements
379
+ const existingElements = namedImports.elements.elements;
380
+ // Find the correct insertion position (alphabetical, case-insensitive)
381
+ const newName = (this.alias || this.member).toLowerCase();
382
+ let insertIndex = existingElements.findIndex(elem => {
383
+ var _a;
384
+ if (((_a = elem.element) === null || _a === void 0 ? void 0 : _a.kind) === tree_1.JS.Kind.ImportSpecifier) {
385
+ const name = this.getImportAlias(elem.element) || this.getImportName(elem.element);
386
+ return newName.localeCompare(name.toLowerCase()) < 0;
387
+ }
388
+ return false;
389
+ });
390
+ if (insertIndex === -1)
391
+ insertIndex = existingElements.length;
392
+ // Build the new elements array with proper spacing
383
393
  const updatedNamedImports = yield this.produceJavaScript(namedImports, p, (namedDraft) => __awaiter(this, void 0, void 0, function* () {
384
- namedDraft.elements = Object.assign(Object.assign({}, namedImports.elements), { elements: [
385
- ...namedImports.elements.elements,
386
- (0, java_1.rightPadded)(newSpecifier, java_1.emptySpace)
387
- ] });
394
+ const lastIndex = existingElements.length - 1;
395
+ const trailingSpace = existingElements[lastIndex].after;
396
+ const newSpecifier = this.createImportSpecifier();
397
+ const newElements = existingElements.flatMap((elem, j) => {
398
+ const results = [];
399
+ if (j === insertIndex) {
400
+ // Insert new element here; first element gets no prefix, others get space
401
+ const prefix = j === 0 ? java_1.emptySpace : java_1.singleSpace;
402
+ results.push((0, java_1.rightPadded)(Object.assign(Object.assign({}, newSpecifier), { prefix }), java_1.emptySpace));
403
+ }
404
+ // Adjust existing element: first after insertion gets space prefix
405
+ let adjusted = elem;
406
+ if (j === 0 && insertIndex === 0 && elem.element) {
407
+ adjusted = Object.assign(Object.assign({}, elem), { element: Object.assign(Object.assign({}, elem.element), { prefix: java_1.singleSpace }) });
408
+ }
409
+ // Last element before a new trailing element loses its trailing space
410
+ if (j === lastIndex && insertIndex > lastIndex) {
411
+ adjusted = Object.assign(Object.assign({}, adjusted), { after: java_1.emptySpace });
412
+ }
413
+ results.push(adjusted);
414
+ return results;
415
+ });
416
+ // Append at end if inserting after all existing elements
417
+ if (insertIndex > lastIndex) {
418
+ newElements.push((0, java_1.rightPadded)(Object.assign(Object.assign({}, newSpecifier), { prefix: java_1.singleSpace }), trailingSpace));
419
+ }
420
+ namedDraft.elements = Object.assign(Object.assign({}, namedImports.elements), { elements: newElements });
388
421
  }));
389
422
  // Update the import with the new named imports
390
423
  const updatedImport = yield this.produceJavaScript(jsImport, p, (importDraft) => __awaiter(this, void 0, void 0, function* () {
@@ -560,29 +593,147 @@ class AddImport extends visitor_1.JavaScriptVisitor {
560
593
  */
561
594
  checkIdentifierReferenced(compilationUnit) {
562
595
  return __awaiter(this, void 0, void 0, function* () {
563
- // Use type attribution to detect if the identifier is referenced
564
- // Map of module name -> Set of member names used from that module
565
- const usedImports = new Map();
566
- // Helper to record usage of a method from a module
567
- const recordMethodUsage = (methodType) => {
568
- const moduleName = java_1.Type.FullyQualified.getFullyQualifiedName(methodType.declaringType);
569
- if (moduleName) {
570
- if (!usedImports.has(moduleName)) {
571
- usedImports.set(moduleName, new Set());
596
+ var _a, _b, _c, _d, _e, _f;
597
+ // For namespace imports, we cannot use type attribution to detect usage
598
+ // because the namespace itself is used as an identifier, not individual members.
599
+ // For simplicity, we skip the onlyIfReferenced check for namespace imports.
600
+ if (this.member === '*') {
601
+ // TODO: Implement proper namespace usage detection by checking if alias identifier is used
602
+ return true;
603
+ }
604
+ // Step 1: Find the expected declaring type by examining existing imports from the same module
605
+ let expectedDeclaringType;
606
+ for (const stmt of compilationUnit.statements) {
607
+ const statement = stmt.element;
608
+ if ((statement === null || statement === void 0 ? void 0 : statement.kind) === tree_1.JS.Kind.Import) {
609
+ const jsImport = statement;
610
+ const moduleSpecifier = (_a = jsImport.moduleSpecifier) === null || _a === void 0 ? void 0 : _a.element;
611
+ if (!moduleSpecifier) {
612
+ continue;
613
+ }
614
+ const moduleName = this.getModuleName(moduleSpecifier);
615
+ if (moduleName !== this.module) {
616
+ continue; // Not the module we're interested in
617
+ }
618
+ // Found an existing import from our target module
619
+ // Extract the declaring type from any imported member with type attribution
620
+ const importClause = jsImport.importClause;
621
+ if (((_b = importClause === null || importClause === void 0 ? void 0 : importClause.namedBindings) === null || _b === void 0 ? void 0 : _b.kind) === tree_1.JS.Kind.NamedImports) {
622
+ const namedImports = importClause.namedBindings;
623
+ for (const elem of namedImports.elements.elements) {
624
+ const specifier = elem.element;
625
+ if ((specifier === null || specifier === void 0 ? void 0 : specifier.kind) === tree_1.JS.Kind.ImportSpecifier) {
626
+ const importSpec = specifier;
627
+ let identifier;
628
+ if (((_c = importSpec.specifier) === null || _c === void 0 ? void 0 : _c.kind) === java_1.J.Kind.Identifier) {
629
+ identifier = importSpec.specifier;
630
+ }
631
+ else if (((_d = importSpec.specifier) === null || _d === void 0 ? void 0 : _d.kind) === tree_1.JS.Kind.Alias) {
632
+ const aliasSpec = importSpec.specifier;
633
+ if (((_e = aliasSpec.alias) === null || _e === void 0 ? void 0 : _e.kind) === java_1.J.Kind.Identifier) {
634
+ identifier = aliasSpec.alias;
635
+ }
636
+ }
637
+ // Try to extract declaring type from either type or fieldType
638
+ if ((identifier === null || identifier === void 0 ? void 0 : identifier.type) && java_1.Type.isMethod(identifier.type)) {
639
+ const methodType = identifier.type;
640
+ expectedDeclaringType = java_1.Type.FullyQualified.getFullyQualifiedName(methodType.declaringType);
641
+ if (expectedDeclaringType) {
642
+ break; // Found it!
643
+ }
644
+ }
645
+ else if (((_f = identifier === null || identifier === void 0 ? void 0 : identifier.fieldType) === null || _f === void 0 ? void 0 : _f.kind) === java_1.Type.Kind.Variable) {
646
+ const variableType = identifier.fieldType;
647
+ if (variableType.owner) {
648
+ expectedDeclaringType = java_1.Type.FullyQualified.getFullyQualifiedName(variableType.owner);
649
+ if (expectedDeclaringType) {
650
+ break; // Found it!
651
+ }
652
+ }
653
+ }
654
+ }
655
+ }
656
+ }
657
+ if (expectedDeclaringType) {
658
+ break; // No need to scan more imports
572
659
  }
573
- usedImports.get(moduleName).add(methodType.name);
574
660
  }
575
- };
576
- // Create a visitor to collect used identifiers with their type attribution
661
+ }
662
+ // Step 2: Look for references that match
663
+ const targetName = this.alias || this.member;
664
+ const targetModule = this.module;
665
+ let found = false;
666
+ // If no existing imports from this module, look for unresolved references
667
+ // If there ARE existing imports, look for references with the expected declaring type
577
668
  const collector = new class extends visitor_1.JavaScriptVisitor {
578
669
  visitIdentifier(identifier, p) {
579
670
  const _super = Object.create(null, {
580
671
  visitIdentifier: { get: () => super.visitIdentifier }
581
672
  });
582
673
  return __awaiter(this, void 0, void 0, function* () {
583
- const type = identifier.type;
584
- if (type && java_1.Type.isMethod(type)) {
585
- recordMethodUsage(type);
674
+ if (identifier.simpleName === targetName) {
675
+ const type = identifier.type;
676
+ const fieldType = identifier.fieldType;
677
+ if (expectedDeclaringType) {
678
+ // We have an expected declaring type - check for exact match
679
+ // Check method type (for functions)
680
+ if (type && java_1.Type.isMethod(type)) {
681
+ const methodType = type;
682
+ const declaringTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(methodType.declaringType);
683
+ if (declaringTypeName === expectedDeclaringType) {
684
+ found = true;
685
+ }
686
+ }
687
+ // Also check field type (for objects, variables, etc.)
688
+ else if ((fieldType === null || fieldType === void 0 ? void 0 : fieldType.kind) === java_1.Type.Kind.Variable) {
689
+ const variableType = fieldType;
690
+ // For variables, the owner is the declaring module/namespace
691
+ if (variableType.owner) {
692
+ const ownerTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(variableType.owner);
693
+ if (ownerTypeName === expectedDeclaringType) {
694
+ found = true;
695
+ }
696
+ }
697
+ }
698
+ // Even with expectedDeclaringType, also check for unresolved references
699
+ // This handles the case where the member isn't imported yet
700
+ else if (!type && !fieldType) {
701
+ found = true;
702
+ }
703
+ }
704
+ else {
705
+ // No existing imports from this module - look for references that match
706
+ // 1. Unresolved references (no type/unknown type and no fieldType)
707
+ const isUnknownType = !type || type.kind === java_1.Type.Kind.Unknown;
708
+ if (isUnknownType && !fieldType) {
709
+ found = true;
710
+ }
711
+ // 2. References with fieldType matching the target module
712
+ else if ((fieldType === null || fieldType === void 0 ? void 0 : fieldType.kind) === java_1.Type.Kind.Variable) {
713
+ const variableType = fieldType;
714
+ if (variableType.owner && java_1.Type.isClass(variableType.owner)) {
715
+ // Traverse owningClass chain to find the root module (handles nested namespaces)
716
+ // For example: React.forwardRef -> owner is "React" namespace -> owningClass is "react" module
717
+ let current = variableType.owner;
718
+ // Walk up the owningClass chain until we reach the root
719
+ while (current.owningClass && java_1.Type.isClass(current.owningClass)) {
720
+ current = current.owningClass;
721
+ }
722
+ const moduleName = java_1.Type.FullyQualified.getFullyQualifiedName(current);
723
+ if (moduleName === targetModule) {
724
+ found = true;
725
+ }
726
+ }
727
+ }
728
+ // 3. References with method type matching the target module
729
+ else if (type && java_1.Type.isMethod(type)) {
730
+ const methodType = type;
731
+ const declaringTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(methodType.declaringType);
732
+ if (declaringTypeName === targetModule) {
733
+ found = true;
734
+ }
735
+ }
736
+ }
586
737
  }
587
738
  return _super.visitIdentifier.call(this, identifier, p);
588
739
  });
@@ -592,8 +743,13 @@ class AddImport extends visitor_1.JavaScriptVisitor {
592
743
  visitMethodInvocation: { get: () => super.visitMethodInvocation }
593
744
  });
594
745
  return __awaiter(this, void 0, void 0, function* () {
595
- if (methodInvocation.methodType) {
596
- recordMethodUsage(methodInvocation.methodType);
746
+ if (methodInvocation.methodType && methodInvocation.methodType.name === targetName) {
747
+ if (expectedDeclaringType) {
748
+ const declaringTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(methodInvocation.methodType.declaringType);
749
+ if (declaringTypeName === expectedDeclaringType) {
750
+ found = true;
751
+ }
752
+ }
597
753
  }
598
754
  return _super.visitMethodInvocation.call(this, methodInvocation, p);
599
755
  });
@@ -603,8 +759,13 @@ class AddImport extends visitor_1.JavaScriptVisitor {
603
759
  visitFunctionCall: { get: () => super.visitFunctionCall }
604
760
  });
605
761
  return __awaiter(this, void 0, void 0, function* () {
606
- if (functionCall.methodType) {
607
- recordMethodUsage(functionCall.methodType);
762
+ if (functionCall.methodType && functionCall.methodType.name === targetName) {
763
+ if (expectedDeclaringType) {
764
+ const declaringTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(functionCall.methodType.declaringType);
765
+ if (declaringTypeName === expectedDeclaringType) {
766
+ found = true;
767
+ }
768
+ }
608
769
  }
609
770
  return _super.visitFunctionCall.call(this, functionCall, p);
610
771
  });
@@ -616,28 +777,22 @@ class AddImport extends visitor_1.JavaScriptVisitor {
616
777
  return __awaiter(this, void 0, void 0, function* () {
617
778
  const type = fieldAccess.type;
618
779
  if (type && java_1.Type.isMethod(type)) {
619
- recordMethodUsage(type);
780
+ const methodType = type;
781
+ if (methodType.name === targetName) {
782
+ if (expectedDeclaringType) {
783
+ const declaringTypeName = java_1.Type.FullyQualified.getFullyQualifiedName(methodType.declaringType);
784
+ if (declaringTypeName === expectedDeclaringType) {
785
+ found = true;
786
+ }
787
+ }
788
+ }
620
789
  }
621
790
  return _super.visitFieldAccess.call(this, fieldAccess, p);
622
791
  });
623
792
  }
624
793
  };
625
794
  yield collector.visit(compilationUnit, undefined);
626
- // For namespace imports (member === '*'), we cannot use type attribution to detect usage
627
- // because the namespace itself is used as an identifier, not individual members.
628
- // We would need to traverse the AST looking for the alias identifier.
629
- // For simplicity, we skip the onlyIfReferenced check for namespace imports.
630
- if (this.member === '*') {
631
- // TODO: Implement proper namespace usage detection by checking if alias identifier is used
632
- return true;
633
- }
634
- // Check if our target import is used based on type attribution
635
- const moduleMembers = usedImports.get(this.module);
636
- if (!moduleMembers) {
637
- return false;
638
- }
639
- // For specific members, check if that member is used; otherwise check if any member is used
640
- return this.member ? moduleMembers.has(this.member) : moduleMembers.size > 0;
795
+ return found;
641
796
  });
642
797
  }
643
798
  /**
@@ -651,12 +806,13 @@ class AddImport extends visitor_1.JavaScriptVisitor {
651
806
  // For side-effect imports, use emptySpace since space comes from LeftPadded.before
652
807
  // For regular imports with import clause, use emptySpace since space comes from LeftPadded.before
653
808
  // However, the printer expects the space after 'from' in the literal's prefix
809
+ // Note: value contains the unquoted string, valueSource contains the quoted version for printing
654
810
  const moduleSpecifier = {
655
811
  id: (0, uuid_1.randomId)(),
656
812
  kind: java_1.J.Kind.Literal,
657
813
  prefix: this.sideEffectOnly ? java_1.emptySpace : java_1.singleSpace,
658
814
  markers: markers_1.emptyMarkers,
659
- value: `'${this.module}'`,
815
+ value: this.module,
660
816
  valueSource: `'${this.module}'`,
661
817
  unicodeEscapes: [],
662
818
  type: undefined