Skip to content

Commit e9551f9

Browse files
alan-agius4dgp1130
authored andcommitted
fix(@schematics/angular): only remove tslib from package.json when it's not a dependency
Fixes: #16191
1 parent 2aa73ef commit e9551f9

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

packages/schematics/angular/migrations/update-9/add-tslib.ts

+11-5
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,22 @@
66
* found in the LICENSE file at https://angular.io/license
77
*/
88
import { Rule } from '@angular-devkit/schematics';
9-
import { NodeDependencyType, addPackageJsonDependency, removePackageJsonDependency } from '../../utility/dependencies';
9+
import { NodeDependencyType, addPackageJsonDependency, getPackageJsonDependency, removePackageJsonDependency } from '../../utility/dependencies';
1010
import { latestVersions } from '../../utility/latest-versions';
1111

1212
export function addTsLib(): Rule {
1313
return host => {
14-
removePackageJsonDependency(host, 'tslib');
14+
const tslibDep = getPackageJsonDependency(host, 'tslib');
15+
16+
if (tslibDep && tslibDep.type !== NodeDependencyType.Default) {
17+
removePackageJsonDependency(host, 'tslib');
18+
}
19+
1520
addPackageJsonDependency(host, {
16-
name: 'tslib',
17-
version: latestVersions.TsLib,
18-
type: NodeDependencyType.Default,
21+
name: 'tslib',
22+
version: latestVersions.TsLib,
23+
type: NodeDependencyType.Default,
24+
overwrite: true,
1925
});
2026
};
2127
}

0 commit comments

Comments
 (0)