mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-22 15:02:11 +08:00
42 lines
1.4 KiB
TypeScript
42 lines
1.4 KiB
TypeScript
/**
|
|
* @license
|
|
* Copyright Google Inc. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
import { Rule, chain } from '@angular-devkit/schematics';
|
|
import { NodePackageInstallTask } from '@angular-devkit/schematics/tasks';
|
|
import { addTsLib } from './add-tslib';
|
|
import { updateLibraries } from './ivy-libraries';
|
|
import { updateNGSWConfig } from './ngsw-config';
|
|
import { removeTsickle } from './remove-tsickle';
|
|
import { updateApplicationTsConfigs } from './update-app-tsconfigs';
|
|
import { updateDependencies } from './update-dependencies';
|
|
import { updateI18nConfig } from './update-i18n';
|
|
import { updateServerMainFile } from './update-server-main-file';
|
|
import { updateWorkspaceConfig } from './update-workspace-config';
|
|
|
|
export default function(): Rule {
|
|
return () => {
|
|
return chain([
|
|
updateWorkspaceConfig(),
|
|
updateI18nConfig(),
|
|
updateLibraries(),
|
|
updateNGSWConfig(),
|
|
updateApplicationTsConfigs(),
|
|
updateDependencies(),
|
|
updateServerMainFile(),
|
|
removeTsickle(),
|
|
addTsLib(),
|
|
(tree, context) => {
|
|
const packageChanges = tree.actions.some(a => a.path.endsWith('/package.json'));
|
|
if (packageChanges) {
|
|
context.addTask(new NodePackageInstallTask());
|
|
}
|
|
},
|
|
]);
|
|
};
|
|
}
|