From d1a62de5e43b06cfebc76ad759e9504836d4f480 Mon Sep 17 00:00:00 2001 From: Andres Pinto Date: Thu, 17 Apr 2025 17:10:13 -0400 Subject: [PATCH] fix(tests): fixed tests failing randomly due to kyber provider --- src/lib/import-esm-package.ts | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/lib/import-esm-package.ts b/src/lib/import-esm-package.ts index 57dad05a9..02af8dc9d 100644 --- a/src/lib/import-esm-package.ts +++ b/src/lib/import-esm-package.ts @@ -2,9 +2,17 @@ * Dynamically imports an ESM package in a CommonJS NestJS project, * avoiding TypeScript transpilation to `require()`, which ESM packages do not support. */ + export const importEsmPackage = async ( packageName: string, -): Promise => - new Function(`return import('${packageName}')`)().then( - (loadedModule: unknown) => loadedModule['default'] ?? loadedModule, - ); +): Promise => { + try { + const modulePromise = eval(`import('${packageName}')`); + const module = await modulePromise; + + return (module.default || module) as ReturnType; + } catch (error) { + console.error(`Error importing ESM package ${packageName}:`, error); + throw error; + } +};