diff --git a/src/utils/resolveId.ts b/src/utils/resolveId.ts index 15157e17b34..1a95695daf2 100644 --- a/src/utils/resolveId.ts +++ b/src/utils/resolveId.ts @@ -45,15 +45,18 @@ export async function resolveId( ); } -function addJsExtensionIfNecessary(file: string, preserveSymlinks: boolean): string | undefined { +async function addJsExtensionIfNecessary( + file: string, + preserveSymlinks: boolean +): Promise { return ( - findFile(file, preserveSymlinks) ?? - findFile(file + '.mjs', preserveSymlinks) ?? - findFile(file + '.js', preserveSymlinks) + (await findFile(file, preserveSymlinks)) ?? + (await findFile(file + '.mjs', preserveSymlinks)) ?? + (await findFile(file + '.js', preserveSymlinks)) ); } -function findFile(file: string, preserveSymlinks: boolean): string | undefined { +async function findFile(file: string, preserveSymlinks: boolean): Promise { try { const stats = lstatSync(file); if (!preserveSymlinks && stats.isSymbolicLink())