diff --git a/packages/next/build/babel/preset.ts b/packages/next/build/babel/preset.ts index 206ad2d753d3..5a563c78e50a 100644 --- a/packages/next/build/babel/preset.ts +++ b/packages/next/build/babel/preset.ts @@ -1,6 +1,5 @@ import { PluginItem } from 'next/dist/compiled/babel/core' import { dirname } from 'path' - const env = process.env.NODE_ENV const isProduction = env === 'production' const isDevelopment = env === 'development' @@ -170,9 +169,9 @@ module.exports = ( helpers: true, regenerator: true, useESModules: supportsESM && presetEnvConfig.modules !== 'commonjs', - absoluteRuntime: dirname( - require.resolve('@babel/runtime/package.json') - ), + absoluteRuntime: process.versions.pnp + ? dirname(require.resolve('@babel/runtime/package.json')) + : undefined, ...options['transform-runtime'], }, ], diff --git a/test/unit/next-babel.unit.test.js b/test/unit/next-babel.unit.test.js index 74feee34f099..3f3daf88e843 100644 --- a/test/unit/next-babel.unit.test.js +++ b/test/unit/next-babel.unit.test.js @@ -64,8 +64,8 @@ describe('next/babel', () => { expect(output).toMatch(`__jsx(${react}.Fragment`) expect(output).toMatch(`__jsx("a",{href:"/"`) - expect(babel(`const a = ()=>home`)).toMatch( - `var _react=_interopRequireDefault(require("react"));var __jsx=_react["default"].createElement;var a=function a(){return __jsx("a",{href:"/"},"home");};` + expect(babel(`const a = ()=>home`)).toMatchInlineSnapshot( + `"\\"use strict\\";var _interopRequireDefault=require(\\"@babel/runtime/helpers/interopRequireDefault\\");var _react=_interopRequireDefault(require(\\"react\\"));var __jsx=_react[\\"default\\"].createElement;var a=function a(){return __jsx(\\"a\\",{href:\\"/\\"},\\"home\\");};"` ) })