Skip to content

Commit 03c4b35

Browse files
authored
Preserve resolution-mode as-written too (#57867)
1 parent a84577b commit 03c4b35

3 files changed

+4
-4
lines changed

src/compiler/emitter.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4183,10 +4183,10 @@ export function createPrinter(printerOptions: PrinterOptions = {}, handlers: Pri
41834183

41844184
function writeDirectives(kind: "path" | "types" | "lib", directives: readonly FileReference[]) {
41854185
for (const directive of directives) {
4186-
const preserve = directive.preserve ? `preserve="true" ` : "";
4187-
const resolutionMode = directive.resolutionMode && directive.resolutionMode !== currentSourceFile?.impliedNodeFormat
4186+
const resolutionMode = directive.resolutionMode
41884187
? `resolution-mode="${directive.resolutionMode === ModuleKind.ESNext ? "import" : "require"}" `
41894188
: "";
4189+
const preserve = directive.preserve ? `preserve="true" ` : "";
41904190
writeComment(`/// <reference ${kind}="${directive.fileName}" ${resolutionMode}${preserve}/>`);
41914191
writeLine();
41924192
}

tests/baselines/reference/nodeModulesTripleSlashReferenceModeDeclarationEmit5(module=node16).js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3333

3434
//// [index.d.ts]
3535
/// <reference types="pkg" resolution-mode="import" preserve="true" />
36-
/// <reference types="pkg" preserve="true" />
36+
/// <reference types="pkg" resolution-mode="require" preserve="true" />
3737
export interface LocalInterface extends ImportInterface, RequireInterface {
3838
}

tests/baselines/reference/nodeModulesTripleSlashReferenceModeDeclarationEmit5(module=nodenext).js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3333

3434
//// [index.d.ts]
3535
/// <reference types="pkg" resolution-mode="import" preserve="true" />
36-
/// <reference types="pkg" preserve="true" />
36+
/// <reference types="pkg" resolution-mode="require" preserve="true" />
3737
export interface LocalInterface extends ImportInterface, RequireInterface {
3838
}

0 commit comments

Comments
 (0)