@openrewrite/rewrite 8.67.0-20251120-075051 → 8.67.0-20251120-093147

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.
@@ -15,10 +15,12 @@ export interface AddImportOptions {
15
15
  * Special values:
16
16
  * - 'default': Adds a default import from the module.
17
17
  * When using 'default', the `alias` parameter is required.
18
+ * - '*': Adds a namespace import (import * as alias from 'module').
19
+ * When using '*', the `alias` parameter is required.
18
20
  * Cannot be combined with `sideEffectOnly`. */
19
21
  member?: string;
20
22
  /** Optional alias for the imported member.
21
- * Required when member is 'default'.
23
+ * Required when member is 'default' or '*'.
22
24
  * Cannot be combined with `sideEffectOnly`. */
23
25
  alias?: string;
24
26
  /** If true, only add the import if the member is actually used in the file. Default: true
@@ -48,6 +50,10 @@ export interface AddImportOptions {
48
50
  * maybeAddImport(visitor, { module: 'react', alias: 'React' });
49
51
  *
50
52
  * @example
53
+ * // Add a namespace import
54
+ * maybeAddImport(visitor, { module: 'crypto', member: '*', alias: 'crypto' });
55
+ *
56
+ * @example
51
57
  * // Add a side-effect import
52
58
  * maybeAddImport(visitor, { module: 'core-js/stable', sideEffectOnly: true });
53
59
  */
@@ -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;;;;;mDAK+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;;;;;;;;;;;;;;;;;;;;GAoBG;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;IA6BrC;;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;IAiExB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoDzB;;OAEG;YACW,yBAAyB;IA6DvC;;OAEG;YACW,qBAAqB;IA8FnC;;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,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"}
@@ -16,7 +16,6 @@ const java_1 = require("../java");
16
16
  const tree_1 = require("./tree");
17
17
  const uuid_1 = require("../uuid");
18
18
  const markers_1 = require("../markers");
19
- const execution_1 = require("../execution");
20
19
  var ImportStyle;
21
20
  (function (ImportStyle) {
22
21
  ImportStyle[ImportStyle["ES6Named"] = 0] = "ES6Named";
@@ -42,6 +41,10 @@ var ImportStyle;
42
41
  * maybeAddImport(visitor, { module: 'react', alias: 'React' });
43
42
  *
44
43
  * @example
44
+ * // Add a namespace import
45
+ * maybeAddImport(visitor, { module: 'crypto', member: '*', alias: 'crypto' });
46
+ *
47
+ * @example
45
48
  * // Add a side-effect import
46
49
  * maybeAddImport(visitor, { module: 'core-js/stable', sideEffectOnly: true });
47
50
  */
@@ -66,6 +69,10 @@ class AddImport extends visitor_1.JavaScriptVisitor {
66
69
  if (options.member === 'default' && !options.alias) {
67
70
  throw new Error("When member is 'default', the alias parameter is required");
68
71
  }
72
+ // Validate that alias is provided when member is '*' (namespace import)
73
+ if (options.member === '*' && !options.alias) {
74
+ throw new Error("When member is '*', the alias parameter is required");
75
+ }
69
76
  // Validate that sideEffectOnly is not combined with incompatible options
70
77
  if (options.sideEffectOnly) {
71
78
  if (options.member !== undefined) {
@@ -272,8 +279,8 @@ class AddImport extends visitor_1.JavaScriptVisitor {
272
279
  // Determine the appropriate import style
273
280
  const importStyle = this.determineImportStyle(compilationUnit);
274
281
  // For ES6 named imports, check if we can merge into an existing import from the same module
275
- // Don't try to merge default imports (member === 'default') or side-effect imports
276
- if (!this.sideEffectOnly && importStyle === ImportStyle.ES6Named && this.member !== undefined && this.member !== 'default') {
282
+ // Don't try to merge default imports (member === 'default'), side-effect imports, or namespace imports (member === '*')
283
+ if (!this.sideEffectOnly && importStyle === ImportStyle.ES6Named && this.member !== undefined && this.member !== 'default' && this.member !== '*') {
277
284
  const mergedCu = yield this.tryMergeIntoExistingImport(compilationUnit, p);
278
285
  if (mergedCu !== compilationUnit) {
279
286
  return mergedCu;
@@ -422,7 +429,7 @@ class AddImport extends visitor_1.JavaScriptVisitor {
422
429
  * Check if the import matches what we're trying to add
423
430
  */
424
431
  isMatchingImport(jsImport) {
425
- var _a, _b, _c;
432
+ var _a, _b, _c, _d;
426
433
  // Check module specifier
427
434
  const moduleSpecifier = (_a = jsImport.moduleSpecifier) === null || _a === void 0 ? void 0 : _a.element;
428
435
  if (!moduleSpecifier) {
@@ -444,14 +451,33 @@ class AddImport extends visitor_1.JavaScriptVisitor {
444
451
  return false;
445
452
  }
446
453
  // Check if the specific member or default import already exists
447
- if (this.member === undefined || this.member === 'default') {
454
+ if (this.member === '*') {
455
+ // We're adding a namespace import, check if one exists
456
+ const namedBindings = importClause.namedBindings;
457
+ if (!namedBindings) {
458
+ return false;
459
+ }
460
+ // Namespace imports can be represented as J.Identifier or JS.Alias
461
+ if (namedBindings.kind === java_1.J.Kind.Identifier) {
462
+ const identifier = namedBindings;
463
+ return identifier.simpleName === this.alias;
464
+ }
465
+ else if (namedBindings.kind === tree_1.JS.Kind.Alias) {
466
+ const alias = namedBindings;
467
+ if (((_b = alias.alias) === null || _b === void 0 ? void 0 : _b.kind) === java_1.J.Kind.Identifier) {
468
+ return alias.alias.simpleName === this.alias;
469
+ }
470
+ }
471
+ return false;
472
+ }
473
+ else if (this.member === undefined || this.member === 'default') {
448
474
  // We're adding a default import, check if one exists
449
475
  // For member === 'default', also verify the alias matches if specified
450
476
  if (importClause.name === undefined) {
451
477
  return false;
452
478
  }
453
479
  // If we have an alias, check that it matches
454
- if (this.alias && ((_b = importClause.name.element) === null || _b === void 0 ? void 0 : _b.kind) === java_1.J.Kind.Identifier) {
480
+ if (this.alias && ((_c = importClause.name.element) === null || _c === void 0 ? void 0 : _c.kind) === java_1.J.Kind.Identifier) {
455
481
  const existingName = importClause.name.element.simpleName;
456
482
  return existingName === this.alias;
457
483
  }
@@ -466,7 +492,7 @@ class AddImport extends visitor_1.JavaScriptVisitor {
466
492
  if (namedBindings.kind === tree_1.JS.Kind.NamedImports) {
467
493
  const namedImports = namedBindings;
468
494
  for (const elem of namedImports.elements.elements) {
469
- if (((_c = elem.element) === null || _c === void 0 ? void 0 : _c.kind) === tree_1.JS.Kind.ImportSpecifier) {
495
+ if (((_d = elem.element) === null || _d === void 0 ? void 0 : _d.kind) === tree_1.JS.Kind.ImportSpecifier) {
470
496
  const specifier = elem.element;
471
497
  const importName = this.getImportName(specifier);
472
498
  const aliasName = this.getImportAlias(specifier);
@@ -596,7 +622,15 @@ class AddImport extends visitor_1.JavaScriptVisitor {
596
622
  });
597
623
  }
598
624
  };
599
- yield collector.visit(compilationUnit, new execution_1.ExecutionContext());
625
+ 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
+ }
600
634
  // Check if our target import is used based on type attribution
601
635
  const moduleMembers = usedImports.get(this.module);
602
636
  if (!moduleMembers) {
@@ -632,6 +666,46 @@ class AddImport extends visitor_1.JavaScriptVisitor {
632
666
  // Side-effect import: import 'module'
633
667
  importClause = undefined;
634
668
  }
669
+ else if (this.member === '*') {
670
+ // Namespace import: import * as alias from 'module'
671
+ const propertyName = {
672
+ id: (0, uuid_1.randomId)(),
673
+ kind: java_1.J.Kind.Identifier,
674
+ prefix: java_1.emptySpace,
675
+ markers: markers_1.emptyMarkers,
676
+ annotations: [],
677
+ simpleName: '*',
678
+ type: undefined,
679
+ fieldType: undefined
680
+ };
681
+ const aliasIdentifier = {
682
+ id: (0, uuid_1.randomId)(),
683
+ kind: java_1.J.Kind.Identifier,
684
+ prefix: java_1.singleSpace,
685
+ markers: markers_1.emptyMarkers,
686
+ annotations: [],
687
+ simpleName: this.alias,
688
+ type: undefined,
689
+ fieldType: undefined
690
+ };
691
+ const namespaceBinding = {
692
+ id: (0, uuid_1.randomId)(),
693
+ kind: tree_1.JS.Kind.Alias,
694
+ prefix: java_1.singleSpace,
695
+ markers: markers_1.emptyMarkers,
696
+ propertyName: (0, java_1.rightPadded)(propertyName, java_1.singleSpace),
697
+ alias: aliasIdentifier
698
+ };
699
+ importClause = {
700
+ id: (0, uuid_1.randomId)(),
701
+ kind: tree_1.JS.Kind.ImportClause,
702
+ prefix: java_1.emptySpace,
703
+ markers: markers_1.emptyMarkers,
704
+ typeOnly: false,
705
+ name: undefined,
706
+ namedBindings: namespaceBinding
707
+ };
708
+ }
635
709
  else if (this.member === undefined || this.member === 'default') {
636
710
  // Default import: import target from 'module'
637
711
  // or: import alias from 'module' (when member === 'default')
@@ -1 +1 @@
1
- {"version":3,"file":"add-import.js","sourceRoot":"","sources":["../../src/javascript/add-import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-import.js","sourceRoot":"","sources":["../../src/javascript/add-import.ts"],"names":[],"mappings":"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"}
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- 8.67.0-20251120-075051
1
+ 8.67.0-20251120-093147
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openrewrite/rewrite",
3
- "version": "8.67.0-20251120-075051",
3
+ "version": "8.67.0-20251120-093147",
4
4
  "license": "Moderne Source Available License",
5
5
  "description": "OpenRewrite JavaScript.",
6
6
  "homepage": "https://github.com/openrewrite/rewrite",
@@ -21,11 +21,13 @@ export interface AddImportOptions {
21
21
  * Special values:
22
22
  * - 'default': Adds a default import from the module.
23
23
  * When using 'default', the `alias` parameter is required.
24
+ * - '*': Adds a namespace import (import * as alias from 'module').
25
+ * When using '*', the `alias` parameter is required.
24
26
  * Cannot be combined with `sideEffectOnly`. */
25
27
  member?: string;
26
28
 
27
29
  /** Optional alias for the imported member.
28
- * Required when member is 'default'.
30
+ * Required when member is 'default' or '*'.
29
31
  * Cannot be combined with `sideEffectOnly`. */
30
32
  alias?: string;
31
33
 
@@ -59,6 +61,10 @@ export interface AddImportOptions {
59
61
  * maybeAddImport(visitor, { module: 'react', alias: 'React' });
60
62
  *
61
63
  * @example
64
+ * // Add a namespace import
65
+ * maybeAddImport(visitor, { module: 'crypto', member: '*', alias: 'crypto' });
66
+ *
67
+ * @example
62
68
  * // Add a side-effect import
63
69
  * maybeAddImport(visitor, { module: 'core-js/stable', sideEffectOnly: true });
64
70
  */
@@ -94,6 +100,11 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
94
100
  throw new Error("When member is 'default', the alias parameter is required");
95
101
  }
96
102
 
103
+ // Validate that alias is provided when member is '*' (namespace import)
104
+ if (options.member === '*' && !options.alias) {
105
+ throw new Error("When member is '*', the alias parameter is required");
106
+ }
107
+
97
108
  // Validate that sideEffectOnly is not combined with incompatible options
98
109
  if (options.sideEffectOnly) {
99
110
  if (options.member !== undefined) {
@@ -322,8 +333,8 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
322
333
  const importStyle = this.determineImportStyle(compilationUnit);
323
334
 
324
335
  // For ES6 named imports, check if we can merge into an existing import from the same module
325
- // Don't try to merge default imports (member === 'default') or side-effect imports
326
- if (!this.sideEffectOnly && importStyle === ImportStyle.ES6Named && this.member !== undefined && this.member !== 'default') {
336
+ // Don't try to merge default imports (member === 'default'), side-effect imports, or namespace imports (member === '*')
337
+ if (!this.sideEffectOnly && importStyle === ImportStyle.ES6Named && this.member !== undefined && this.member !== 'default' && this.member !== '*') {
327
338
  const mergedCu = await this.tryMergeIntoExistingImport(compilationUnit, p);
328
339
  if (mergedCu !== compilationUnit) {
329
340
  return mergedCu;
@@ -534,7 +545,25 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
534
545
  }
535
546
 
536
547
  // Check if the specific member or default import already exists
537
- if (this.member === undefined || this.member === 'default') {
548
+ if (this.member === '*') {
549
+ // We're adding a namespace import, check if one exists
550
+ const namedBindings = importClause.namedBindings;
551
+ if (!namedBindings) {
552
+ return false;
553
+ }
554
+
555
+ // Namespace imports can be represented as J.Identifier or JS.Alias
556
+ if (namedBindings.kind === J.Kind.Identifier) {
557
+ const identifier = namedBindings as J.Identifier;
558
+ return identifier.simpleName === this.alias;
559
+ } else if (namedBindings.kind === JS.Kind.Alias) {
560
+ const alias = namedBindings as JS.Alias;
561
+ if (alias.alias?.kind === J.Kind.Identifier) {
562
+ return (alias.alias as J.Identifier).simpleName === this.alias;
563
+ }
564
+ }
565
+ return false;
566
+ } else if (this.member === undefined || this.member === 'default') {
538
567
  // We're adding a default import, check if one exists
539
568
  // For member === 'default', also verify the alias matches if specified
540
569
  if (importClause.name === undefined) {
@@ -647,8 +676,8 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
647
676
  };
648
677
 
649
678
  // Create a visitor to collect used identifiers with their type attribution
650
- const collector = new class extends JavaScriptVisitor<ExecutionContext> {
651
- override async visitIdentifier(identifier: J.Identifier, p: ExecutionContext): Promise<J | undefined> {
679
+ const collector = new class extends JavaScriptVisitor<void> {
680
+ override async visitIdentifier(identifier: J.Identifier, p: void): Promise<J | undefined> {
652
681
  const type = identifier.type;
653
682
  if (type && Type.isMethod(type)) {
654
683
  recordMethodUsage(type as Type.Method);
@@ -656,21 +685,21 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
656
685
  return super.visitIdentifier(identifier, p);
657
686
  }
658
687
 
659
- override async visitMethodInvocation(methodInvocation: J.MethodInvocation, p: ExecutionContext): Promise<J | undefined> {
688
+ override async visitMethodInvocation(methodInvocation: J.MethodInvocation, p: void): Promise<J | undefined> {
660
689
  if (methodInvocation.methodType) {
661
690
  recordMethodUsage(methodInvocation.methodType);
662
691
  }
663
692
  return super.visitMethodInvocation(methodInvocation, p);
664
693
  }
665
694
 
666
- override async visitFunctionCall(functionCall: JS.FunctionCall, p: ExecutionContext): Promise<J | undefined> {
695
+ override async visitFunctionCall(functionCall: JS.FunctionCall, p: void): Promise<J | undefined> {
667
696
  if (functionCall.methodType) {
668
697
  recordMethodUsage(functionCall.methodType);
669
698
  }
670
699
  return super.visitFunctionCall(functionCall, p);
671
700
  }
672
701
 
673
- override async visitFieldAccess(fieldAccess: J.FieldAccess, p: ExecutionContext): Promise<J | undefined> {
702
+ override async visitFieldAccess(fieldAccess: J.FieldAccess, p: void): Promise<J | undefined> {
674
703
  const type = fieldAccess.type;
675
704
  if (type && Type.isMethod(type)) {
676
705
  recordMethodUsage(type as Type.Method);
@@ -679,7 +708,16 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
679
708
  }
680
709
  };
681
710
 
682
- await collector.visit(compilationUnit, new ExecutionContext());
711
+ await collector.visit(compilationUnit, undefined);
712
+
713
+ // For namespace imports (member === '*'), we cannot use type attribution to detect usage
714
+ // because the namespace itself is used as an identifier, not individual members.
715
+ // We would need to traverse the AST looking for the alias identifier.
716
+ // For simplicity, we skip the onlyIfReferenced check for namespace imports.
717
+ if (this.member === '*') {
718
+ // TODO: Implement proper namespace usage detection by checking if alias identifier is used
719
+ return true;
720
+ }
683
721
 
684
722
  // Check if our target import is used based on type attribution
685
723
  const moduleMembers = usedImports.get(this.module);
@@ -718,6 +756,48 @@ export class AddImport<P> extends JavaScriptVisitor<P> {
718
756
  if (this.sideEffectOnly) {
719
757
  // Side-effect import: import 'module'
720
758
  importClause = undefined;
759
+ } else if (this.member === '*') {
760
+ // Namespace import: import * as alias from 'module'
761
+ const propertyName: J.Identifier = {
762
+ id: randomId(),
763
+ kind: J.Kind.Identifier,
764
+ prefix: emptySpace,
765
+ markers: emptyMarkers,
766
+ annotations: [],
767
+ simpleName: '*',
768
+ type: undefined,
769
+ fieldType: undefined
770
+ };
771
+
772
+ const aliasIdentifier: J.Identifier = {
773
+ id: randomId(),
774
+ kind: J.Kind.Identifier,
775
+ prefix: singleSpace,
776
+ markers: emptyMarkers,
777
+ annotations: [],
778
+ simpleName: this.alias!,
779
+ type: undefined,
780
+ fieldType: undefined
781
+ };
782
+
783
+ const namespaceBinding: JS.Alias = {
784
+ id: randomId(),
785
+ kind: JS.Kind.Alias,
786
+ prefix: singleSpace,
787
+ markers: emptyMarkers,
788
+ propertyName: rightPadded(propertyName, singleSpace),
789
+ alias: aliasIdentifier
790
+ };
791
+
792
+ importClause = {
793
+ id: randomId(),
794
+ kind: JS.Kind.ImportClause,
795
+ prefix: emptySpace,
796
+ markers: emptyMarkers,
797
+ typeOnly: false,
798
+ name: undefined,
799
+ namedBindings: namespaceBinding
800
+ };
721
801
  } else if (this.member === undefined || this.member === 'default') {
722
802
  // Default import: import target from 'module'
723
803
  // or: import alias from 'module' (when member === 'default')