43 lines
1.3 KiB
TypeScript
43 lines
1.3 KiB
TypeScript
import { addDependenciesToPackageJson, getProjects, Tree } from '@nx/devkit';
|
|
import { nxVersion } from '../../utils/versions';
|
|
export function installWebpackRollupDependencies(tree: Tree) {
|
|
const projects = getProjects(tree);
|
|
let shouldInstall = false;
|
|
|
|
for (const [, project] of projects) {
|
|
if (
|
|
project.targets?.build?.executor === '@nrwl/webpack:webpack' ||
|
|
project.targets?.build?.executor === '@nrwl/rollup:rollup' ||
|
|
project.targets?.build?.executor === '@nrwl/web:rollup'
|
|
) {
|
|
shouldInstall = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (shouldInstall) {
|
|
// These were previously dependencies of `@nrwl/react` but we've removed them
|
|
// to accommodate different bundlers and test runners.
|
|
return addDependenciesToPackageJson(
|
|
tree,
|
|
{},
|
|
{
|
|
'@babel/preset-react': '^7.14.5',
|
|
'@pmmmwh/react-refresh-webpack-plugin': '^0.5.7',
|
|
'@svgr/webpack': '^6.1.2',
|
|
'css-loader': '^6.4.0',
|
|
'react-refresh': '^0.10.0',
|
|
'style-loader': '^3.3.0',
|
|
stylus: '^0.55.0',
|
|
'stylus-loader': '^7.1.0',
|
|
'url-loader': '^4.1.1',
|
|
webpack: '^5.75.0',
|
|
'webpack-merge': '^5.8.0',
|
|
'@nrwl/webpack': nxVersion,
|
|
}
|
|
);
|
|
}
|
|
}
|
|
|
|
export default installWebpackRollupDependencies;
|