From 1761c046fa26d1cc82df6a56d80cebb8087c11ad Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Aug 2021 16:40:13 +0200 Subject: [PATCH 1/3] fix(react-scripts): add undeclared dependency `terser-webpack-plugin` --- package-lock.json | 2 ++ packages/react-scripts/package.json | 1 + 2 files changed, 3 insertions(+) diff --git a/package-lock.json b/package-lock.json index 1138b9d702e..b08138a3e46 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33581,6 +33581,7 @@ "semver": "7.3.5", "source-map-loader": "^1.1.2", "style-loader": "3.0.0", + "terser-webpack-plugin": "^5.1.4", "webpack": "5.41.1", "webpack-dev-server": "4.0.0", "webpack-manifest-plugin": "3.1.1", @@ -54609,6 +54610,7 @@ "semver": "7.3.5", "source-map-loader": "^1.1.2", "style-loader": "3.0.0", + "terser-webpack-plugin": "^5.1.4", "webpack": "5.41.1", "webpack-dev-server": "4.0.0", "webpack-manifest-plugin": "3.1.1", diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index e3a876e1673..39a19584f61 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -70,6 +70,7 @@ "semver": "7.3.5", "source-map-loader": "^1.1.2", "style-loader": "3.0.0", + "terser-webpack-plugin": "^5.1.4", "webpack": "5.41.1", "webpack-dev-server": "4.0.0", "webpack-manifest-plugin": "3.1.1", From b59ce77b04c584305bc4e32a4038f9be03d58bd2 Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Aug 2021 16:41:12 +0200 Subject: [PATCH 2/3] fix(react-scripts): resolve webpack loaders --- packages/react-scripts/config/webpack.config.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/react-scripts/config/webpack.config.js b/packages/react-scripts/config/webpack.config.js index 6bc8b2cee11..ffd8443ed0e 100644 --- a/packages/react-scripts/config/webpack.config.js +++ b/packages/react-scripts/config/webpack.config.js @@ -329,7 +329,7 @@ module.exports = function (webpackEnv) { enforce: 'pre', exclude: /@babel(?:\/|\\{1,2})runtime/, test: /\.(js|mjs|jsx|ts|tsx|css)$/, - use: 'source-map-loader', + loader: require.resolve('source-map-loader'), }, { // "oneOf" will traverse all following loaders until one will @@ -364,7 +364,7 @@ module.exports = function (webpackEnv) { test: /\.svg$/, use: [ { - loader: '@svgr/webpack', + loader: require.resolve('@svgr/webpack'), options: { prettier: false, svgo: false, @@ -376,7 +376,7 @@ module.exports = function (webpackEnv) { }, }, { - loader: 'file-loader', + loader: require.resolve('file-loader'), options: { name: 'static/media/[name].[hash].[ext]', }, From 80b8a29cd79467ffa0aa2a0a80b194c5089a3a91 Mon Sep 17 00:00:00 2001 From: merceyz Date: Sat, 7 Aug 2021 16:42:18 +0200 Subject: [PATCH 3/3] fix(react-scripts): resolve `@babel/runtime` from the preset --- packages/react-scripts/config/webpack.config.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/react-scripts/config/webpack.config.js b/packages/react-scripts/config/webpack.config.js index ffd8443ed0e..7f3b2234dd2 100644 --- a/packages/react-scripts/config/webpack.config.js +++ b/packages/react-scripts/config/webpack.config.js @@ -47,9 +47,12 @@ const reactRefreshWebpackPluginRuntimeEntry = require.resolve( ); const babelRuntimeEntry = require.resolve('babel-preset-react-app'); const babelRuntimeEntryHelpers = require.resolve( - '@babel/runtime/helpers/esm/assertThisInitialized' + '@babel/runtime/helpers/esm/assertThisInitialized', + { paths: [babelRuntimeEntry] } ); -const babelRuntimeRegenerator = require.resolve('@babel/runtime/regenerator'); +const babelRuntimeRegenerator = require.resolve('@babel/runtime/regenerator', { + paths: [babelRuntimeEntry], +}); // Some apps do not need the benefits of saving a web request, so not inlining the chunk // makes for a smoother build process.