diff --git a/packages/next/build/webpack/config/blocks/css/loaders/global.ts b/packages/next/build/webpack/config/blocks/css/loaders/global.ts index 645d8b5545058de449e99dfac3a70f167d0fade8..235de3c104bac13848848d5bc7a85180db53d85e 100644 --- a/packages/next/build/webpack/config/blocks/css/loaders/global.ts +++ b/packages/next/build/webpack/config/blocks/css/loaders/global.ts @@ -29,7 +29,7 @@ export function getGlobalCssLoader( // Compile CSS loaders.push({ - loader: require.resolve('postcss-loader'), + loader: require.resolve('next/dist/compiled/postcss-loader'), options: { ident: '__nextjs_postcss', plugins: postCssPlugins, diff --git a/packages/next/build/webpack/config/blocks/css/loaders/modules.ts b/packages/next/build/webpack/config/blocks/css/loaders/modules.ts index 34e3c92057f310f7ab05c9e4be95f91ce6c58ff1..d5e920f1c1cc4d712e33b049e6f366034e347dbb 100644 --- a/packages/next/build/webpack/config/blocks/css/loaders/modules.ts +++ b/packages/next/build/webpack/config/blocks/css/loaders/modules.ts @@ -45,7 +45,7 @@ export function getCssModuleLoader( // Compile CSS loaders.push({ - loader: require.resolve('postcss-loader'), + loader: require.resolve('next/dist/compiled/postcss-loader'), options: { ident: '__nextjs_postcss', plugins: postCssPlugins, diff --git a/packages/next/build/webpack/config/blocks/css/plugins.ts b/packages/next/build/webpack/config/blocks/css/plugins.ts index b333350690db382c678aed4795c501be55500b5c..032badee4b7ed45e0a40d5bb9aa21f3ab2aa858e 100644 --- a/packages/next/build/webpack/config/blocks/css/plugins.ts +++ b/packages/next/build/webpack/config/blocks/css/plugins.ts @@ -84,9 +84,9 @@ function getDefaultPlugins( } catch {} return [ - require.resolve('postcss-flexbugs-fixes'), + require.resolve('next/dist/compiled/postcss-flexbugs-fixes'), [ - require.resolve('postcss-preset-env'), + require.resolve('next/dist/compiled/postcss-preset-env'), { browsers: browsers ?? ['defaults'], autoprefixer: { diff --git a/packages/next/build/webpack/plugins/css-minimizer-plugin.ts b/packages/next/build/webpack/plugins/css-minimizer-plugin.ts index d1471490ed6450e74199edadaf2c9ae56180c1df..11afbbbcccafb4c2591120794f13d5d072470959 100644 --- a/packages/next/build/webpack/plugins/css-minimizer-plugin.ts +++ b/packages/next/build/webpack/plugins/css-minimizer-plugin.ts @@ -1,4 +1,4 @@ -import { process as minify } from 'cssnano-simple' +import { process as minify } from 'next/dist/compiled/cssnano-simple' import webpack from 'webpack' import { RawSource, SourceMapSource } from 'webpack-sources' diff --git a/packages/next/package.json b/packages/next/package.json index bf2a4cbfe672cc2a57c3abf31c52f1a1bae0a08e..79c4cce6e41b449986745e49e7724cadf8f71cd8 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -80,16 +80,13 @@ "babel-plugin-transform-react-remove-prop-types": "0.4.24", "browserslist": "4.8.3", "css-loader": "3.3.0", - "cssnano-simple": "1.0.0", "fork-ts-checker-webpack-plugin": "3.1.1", "jest-worker": "24.9.0", "loader-utils": "2.0.0", "mini-css-extract-plugin": "0.8.0", "native-url": "0.2.6", "pnp-webpack-plugin": "1.5.0", - "postcss-flexbugs-fixes": "4.2.0", - "postcss-loader": "3.0.0", - "postcss-preset-env": "6.7.0", + "postcss": "7.0.27", "prop-types": "15.7.2", "prop-types-exact": "1.2.0", "react-is": "16.8.6", @@ -160,6 +157,7 @@ "conf": "5.0.0", "content-type": "1.0.4", "cookie": "0.4.0", + "cssnano-simple": "1.0.0", "devalue": "2.0.1", "dotenv": "8.2.0", "dotenv-expand": "5.1.0", @@ -183,6 +181,9 @@ "node-fetch": "2.6.0", "ora": "3.4.0", "path-to-regexp": "6.1.0", + "postcss-flexbugs-fixes": "4.2.0", + "postcss-loader": "3.0.0", + "postcss-preset-env": "6.7.0", "raw-body": "2.4.0", "react-error-overlay": "5.1.6", "recast": "0.18.5", diff --git a/packages/next/taskfile.js b/packages/next/taskfile.js index 3d47478b1729c8d4c40bdd644e5c50f6f2a3eb04..fae1fbd721ebc761390cfe2e1c76345322129ef3 100644 --- a/packages/next/taskfile.js +++ b/packages/next/taskfile.js @@ -172,6 +172,14 @@ export async function ncc_cookie(task, opts) { .target('dist/compiled/cookie') } // eslint-disable-next-line camelcase +externals['cssnano-simple'] = 'next/dist/compiled/cssnano-simple' +export async function ncc_cssnano_simple(task, opts) { + await task + .source(opts.src || relative(__dirname, require.resolve('cssnano-simple'))) + .ncc({ packageName: 'cssnano-simple', externals }) + .target('dist/compiled/cssnano-simple') +} +// eslint-disable-next-line camelcase externals['devalue'] = 'next/dist/compiled/devalue' export async function ncc_devalue(task, opts) { await task @@ -342,6 +350,35 @@ export async function ncc_ora(task, opts) { .target('dist/compiled/ora') } // eslint-disable-next-line camelcase +externals['postcss-flexbugs-fixes'] = + 'next/dist/compiled/postcss-flexbugs-fixes' +export async function ncc_postcss_flexbugs_fixes(task, opts) { + await task + .source( + opts.src || relative(__dirname, require.resolve('postcss-flexbugs-fixes')) + ) + .ncc({ packageName: 'postcss-flexbugs-fixes', externals }) + .target('dist/compiled/postcss-flexbugs-fixes') +} +// eslint-disable-next-line camelcase +externals['postcss-loader'] = 'next/dist/compiled/postcss-loader' +export async function ncc_postcss_loader(task, opts) { + await task + .source(opts.src || relative(__dirname, require.resolve('postcss-loader'))) + .ncc({ packageName: 'postcss-loader', externals }) + .target('dist/compiled/postcss-loader') +} +// eslint-disable-next-line camelcase +externals['postcss-preset-env'] = 'next/dist/compiled/postcss-preset-env' +export async function ncc_postcss_preset_env(task, opts) { + await task + .source( + opts.src || relative(__dirname, require.resolve('postcss-preset-env')) + ) + .ncc({ packageName: 'postcss-preset-env', externals }) + .target('dist/compiled/postcss-preset-env') +} +// eslint-disable-next-line camelcase externals['raw-body'] = 'next/dist/compiled/raw-body' export async function ncc_raw_body(task, opts) { await task @@ -486,6 +523,7 @@ export async function precompile(task) { 'ncc_conf', 'ncc_content_type', 'ncc_cookie', + 'ncc_cssnano_simple', 'ncc_devalue', 'ncc_dotenv', 'ncc_dotenv_expand', @@ -507,6 +545,9 @@ export async function precompile(task) { 'ncc_nanoid', 'ncc_node_fetch', 'ncc_ora', + 'ncc_postcss_flexbugs_fixes', + 'ncc_postcss_loader', + 'ncc_postcss_preset_env', 'ncc_raw_body', 'ncc_recast', 'ncc_resolve', diff --git a/packages/next/types/misc.d.ts b/packages/next/types/misc.d.ts index 8835f5290695f56160ab4125f5e6be140eb2afdd..4c53d8b18737d193c174ffc7ac0fb3922a4c5b1f 100644 --- a/packages/next/types/misc.d.ts +++ b/packages/next/types/misc.d.ts @@ -71,6 +71,10 @@ declare module 'next/dist/compiled/cookie' { import m from 'cookie' export = m } +declare module 'next/dist/compiled/cssnano-simple' { + import m from 'cssnano-simple' + export = m +} declare module 'next/dist/compiled/devalue' { import m from 'devalue' export = m