fix: check if dependencies & devDependencies exist before deleting dep (#30224)

## Current Behavior
`removeDependenciesFromPackageJson` tries to delete dep from `undefined`
if there is no `dependencies` or `devDependencies` in package.json

## Expected Behavior
First check if `dependencies` or `devDependencies` exists

## Related Issue(s)
Fixes #30222

Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
This commit is contained in:
François 2025-04-26 01:42:31 +02:00 committed by GitHub
parent bde7315b0f
commit da4f55bca3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -287,15 +287,18 @@ export function removeDependenciesFromPackageJson(
) )
) { ) {
updateJson(tree, packageJsonPath, (json) => { updateJson(tree, packageJsonPath, (json) => {
if (json.dependencies) {
for (const dep of dependencies) { for (const dep of dependencies) {
delete json.dependencies[dep]; delete json.dependencies[dep];
} }
json.dependencies = sortObjectByKeys(json.dependencies);
}
if (json.devDependencies) {
for (const devDep of devDependencies) { for (const devDep of devDependencies) {
delete json.devDependencies[devDep]; delete json.devDependencies[devDep];
} }
json.dependencies = sortObjectByKeys(json.dependencies);
json.devDependencies = sortObjectByKeys(json.devDependencies); json.devDependencies = sortObjectByKeys(json.devDependencies);
}
return json; return json;
}); });
} }