From 32637b491d897c9a6d9501504bcc7f8ece731249 Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Nov 2020 13:10:44 +0100 Subject: [PATCH 1/4] fix(next): resolve absolute path to @babel/runtime --- packages/next/build/babel/preset.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/next/build/babel/preset.ts b/packages/next/build/babel/preset.ts index 2ce4ffd594a5..bdd220650427 100644 --- a/packages/next/build/babel/preset.ts +++ b/packages/next/build/babel/preset.ts @@ -1,4 +1,6 @@ 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' @@ -168,7 +170,9 @@ module.exports = ( helpers: true, regenerator: true, useESModules: supportsESM && presetEnvConfig.modules !== 'commonjs', - absoluteRuntime: process.versions.pnp ? __dirname : undefined, + absoluteRuntime: dirname( + require.resolve('@babel/runtime/package.json') + ), ...options['transform-runtime'], }, ], From 53ebc8b35705fde9a7137cfa1d5ccbeee347d5ab Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Nov 2020 13:54:52 +0100 Subject: [PATCH 2/4] test: ignore runtime path --- test/unit/next-babel.test.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/unit/next-babel.test.js b/test/unit/next-babel.test.js index a385ea401722..0d46a56b45c0 100644 --- a/test/unit/next-babel.test.js +++ b/test/unit/next-babel.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`)).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\\");};"` + 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\\");};"` ) }) From 8cda33a9fd9c16a06c5d16ff2f58ea1d38a2ca6e Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Nov 2020 14:22:25 +0100 Subject: [PATCH 3/4] test: remove escapes --- test/unit/next-babel.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/unit/next-babel.test.js b/test/unit/next-babel.test.js index 0d46a56b45c0..41ac99bb430e 100644 --- a/test/unit/next-babel.test.js +++ b/test/unit/next-babel.test.js @@ -65,7 +65,7 @@ describe('next/babel', () => { 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\\");};"` + `var _react=_interopRequireDefault(require("react"));var __jsx=_react["default"].createElement;var a=function a(){return __jsx("a",{href:"/"},"home");};"` ) }) From 12d3d66c274282612fc2d794f25a3f558e4a1902 Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Nov 2020 14:54:52 +0100 Subject: [PATCH 4/4] test: remove extra quote --- test/unit/next-babel.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/unit/next-babel.test.js b/test/unit/next-babel.test.js index 41ac99bb430e..858678dbed9b 100644 --- a/test/unit/next-babel.test.js +++ b/test/unit/next-babel.test.js @@ -65,7 +65,7 @@ describe('next/babel', () => { 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");};"` + `var _react=_interopRequireDefault(require("react"));var __jsx=_react["default"].createElement;var a=function a(){return __jsx("a",{href:"/"},"home");};` ) })