Skip to content

Commit b12315f

Browse files
committed
Minor PR feedback
1 parent 13e76d7 commit b12315f

File tree

5 files changed

+15
-26
lines changed

5 files changed

+15
-26
lines changed

src/compiler/commandLineParser.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -3201,7 +3201,7 @@ namespace ts {
32013201
// Rather than re-query this for each file and filespec, we query the supported extensions
32023202
// once and store it on the expansion context.
32033203
const supportedExtensions = getSupportedExtensions(options, extraFileExtensions);
3204-
const supportedExtensionsWithJsonIfResolveJsonModule = getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
3204+
const supportedExtensionsWithJsonIfResolveJsonModule = getSupportedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
32053205

32063206
// Literal files are always included verbatim. An "include" or "exclude" specification cannot
32073207
// remove a literal file.
@@ -3447,7 +3447,7 @@ namespace ts {
34473447
}
34483448
for (const ext of extensionGroup) {
34493449
if (fileExtensionIs(file, ext)) {
3450-
break;
3450+
return false;
34513451
}
34523452
const higherPriorityPath = keyMapper(changeExtension(file, ext));
34533453
if (literalFiles.has(higherPriorityPath) || wildcardFiles.has(higherPriorityPath)) {
@@ -3478,7 +3478,7 @@ namespace ts {
34783478
for (let i = extensionGroup.length - 1; i >= 0; i--) {
34793479
const ext = extensionGroup[i];
34803480
if (fileExtensionIs(file, ext)) {
3481-
break;
3481+
return;
34823482
}
34833483
const lowerPriorityPath = keyMapper(changeExtension(file, ext));
34843484
wildcardFiles.delete(lowerPriorityPath);

src/compiler/emitter.ts

+5-16
Original file line numberDiff line numberDiff line change
@@ -108,22 +108,11 @@ namespace ts {
108108

109109
/* @internal */
110110
export function getOutputExtension(fileName: string, options: CompilerOptions): Extension {
111-
if (fileExtensionIs(fileName, Extension.Json)) {
112-
return Extension.Json;
113-
}
114-
115-
if (options.jsx === JsxEmit.Preserve) {
116-
if (fileExtensionIsOneOf(fileName, [Extension.Jsx, Extension.Tsx])) {
117-
return Extension.Jsx;
118-
}
119-
}
120-
if (fileExtensionIsOneOf(fileName, [Extension.Mts, Extension.Mjs])) {
121-
return Extension.Mjs;
122-
}
123-
if (fileExtensionIsOneOf(fileName, [Extension.Cts, Extension.Cjs])) {
124-
return Extension.Cjs;
125-
}
126-
return Extension.Js;
111+
return fileExtensionIs(fileName, Extension.Json) ? Extension.Json :
112+
options.jsx === JsxEmit.Preserve && fileExtensionIsOneOf(fileName, [Extension.Jsx, Extension.Tsx]) ? Extension.Jsx :
113+
fileExtensionIsOneOf(fileName, [Extension.Mts, Extension.Mjs]) ? Extension.Mjs :
114+
fileExtensionIsOneOf(fileName, [Extension.Cts, Extension.Cjs]) ? Extension.Cjs :
115+
Extension.Js;
127116
}
128117

129118
function getOutputPathWithoutChangingExt(inputFileName: string, configFile: ParsedCommandLine, ignoreCase: boolean, outputDir: string | undefined, getCommonSourceDirectory?: () => string) {

src/compiler/program.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -883,7 +883,7 @@ namespace ts {
883883
const programDiagnostics = createDiagnosticCollection();
884884
const currentDirectory = host.getCurrentDirectory();
885885
const supportedExtensions = getSupportedExtensions(options);
886-
const supportedExtensionsWithJsonIfResolveJsonModule = getSuppoertedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
886+
const supportedExtensionsWithJsonIfResolveJsonModule = getSupportedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
887887

888888
// Map storing if there is emit blocking diagnostics for given input
889889
const hasEmitBlockingDiagnostics = new Map<string, boolean>();

src/compiler/utilities.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -6738,7 +6738,7 @@ namespace ts {
67386738
}
67396739

67406740
/**
6741-
* List of supported extensions in order of file resolution precedence.
6741+
* Groups of supported extensions in order of file resolution precedence. (eg, TS > TSX > DTS and seperately, CTS > DCTS)
67426742
*/
67436743
export const supportedTSExtensions: readonly Extension[][] = [[Extension.Ts, Extension.Tsx, Extension.Dts], [Extension.Cts, Extension.Dcts], [Extension.Mts, Extension.Dmts]];
67446744
export const supportedTSExtensionsFlat: readonly Extension[] = flatten(supportedTSExtensions);
@@ -6769,9 +6769,9 @@ namespace ts {
67696769
return extensions;
67706770
}
67716771

6772-
export function getSuppoertedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly Extension[][]): readonly Extension[][];
6773-
export function getSuppoertedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly string[][]): readonly string[][];
6774-
export function getSuppoertedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly string[][]): readonly string[][] {
6772+
export function getSupportedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly Extension[][]): readonly Extension[][];
6773+
export function getSupportedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly string[][]): readonly string[][];
6774+
export function getSupportedExtensionsWithJsonIfResolveJsonModule(options: CompilerOptions | undefined, supportedExtensions: readonly string[][]): readonly string[][] {
67756775
if (!options || !options.resolveJsonModule) return supportedExtensions;
67766776
if (supportedExtensions === allSupportedExtensions) return allSupportedExtensionsWithJson;
67776777
if (supportedExtensions === supportedTSExtensions) return supportedTSExtensionsWithJson;
@@ -6794,7 +6794,7 @@ namespace ts {
67946794
if (!fileName) return false;
67956795

67966796
const supportedExtensions = getSupportedExtensions(compilerOptions, extraFileExtensions);
6797-
for (const extension of flatten(getSuppoertedExtensionsWithJsonIfResolveJsonModule(compilerOptions, supportedExtensions))) {
6797+
for (const extension of flatten(getSupportedExtensionsWithJsonIfResolveJsonModule(compilerOptions, supportedExtensions))) {
67986798
if (fileExtensionIs(fileName, extension)) {
67996799
return true;
68006800
}

src/services/stringCompletions.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ namespace ts.Completions.StringCompletions {
347347
function getSupportedExtensionsForModuleResolution(compilerOptions: CompilerOptions): readonly Extension[][] {
348348
const extensions = getSupportedExtensions(compilerOptions);
349349
return getEmitModuleResolutionKind(compilerOptions) === ModuleResolutionKind.NodeJs ?
350-
getSuppoertedExtensionsWithJsonIfResolveJsonModule(compilerOptions, extensions) :
350+
getSupportedExtensionsWithJsonIfResolveJsonModule(compilerOptions, extensions) :
351351
extensions;
352352
}
353353

0 commit comments

Comments
 (0)