diff --git a/packages/next/build/swc/options.js b/packages/next/build/swc/options.js index 1306efc8819ea..f6895bcaddec5 100644 --- a/packages/next/build/swc/options.js +++ b/packages/next/build/swc/options.js @@ -43,6 +43,9 @@ function getBaseSWCOptions({ const useDefineForClassFields = Boolean( jsConfig?.compilerOptions?.useDefineForClassFields ) + const plugins = (nextConfig?.experimental?.swcPlugins ?? []) + .filter(Array.isArray) + .map(([name, options]) => [require.resolve(name), options]) return { jsc: { ...(resolvedBaseUrl && paths @@ -55,7 +58,7 @@ function getBaseSWCOptions({ parser: parserConfig, experimental: { keepImportAssertions: true, - plugins: nextConfig?.experimental?.swcPlugins ?? undefined, + plugins, }, transform: { // Enables https://github.com/swc-project/swc/blob/0359deb4841be743d73db4536d4a22ac797d7f65/crates/swc_ecma_ext_transforms/src/jest.rs