From 0232e1f0c8b437b3f8308a18ee51b6beac06e304 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Ribaudo?= Date: Fri, 7 Jan 2022 00:04:05 +0100 Subject: [PATCH] Fix old node --- .../src/config/files/import-meta-resolve.ts | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/babel-core/src/config/files/import-meta-resolve.ts b/packages/babel-core/src/config/files/import-meta-resolve.ts index cadb311b26f1..07aeffefe419 100644 --- a/packages/babel-core/src/config/files/import-meta-resolve.ts +++ b/packages/babel-core/src/config/files/import-meta-resolve.ts @@ -11,14 +11,16 @@ try { // import.meta.resolve is only available in ESM, but this file is compiled to CJS. // We can extract ir using dynamic import. -const resolveP = - import_ && import_("data:text/javascript,export default import.meta.resolve"); +const resolveP = import_ + ? import_("data:text/javascript,export default import.meta.resolve").then( + // Since import.meta.resolve is unstable and only available when + // using the --experimental-import-meta-resolve flag, we almost + // always use the polyfill for now. + m => m.default || polyfill, + () => polyfill, + ) + : Promise.resolve(polyfill); -export default async function getImportMetaResolve(): Promise< - ImportMeta["resolve"] -> { - // Since import.meta.resolve is unstable and only available when - // using the --experimental-import-meta-resolve flag, we almost - // always use the polyfill for now. - return (await resolveP).default || polyfill; +export default function getImportMetaResolve(): Promise { + return resolveP; }