UNPKG

igniteui-angular-sovn

Version:

Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps

28 lines (25 loc) 1.2 kB
import { workspaces } from '@angular-devkit/core'; import { chain, Rule, SchematicContext, Tree } from '@angular-devkit/schematics'; import { Options } from '../interfaces/options'; import { installPackageJsonDependencies } from '../utils/package-handler'; import { logSuccess, addDependencies } from '../utils/dependency-handler'; import { addResetCss } from './add-normalize'; import { createHost } from '../utils/util'; const addNormalize = (options: Options): Rule => async (tree: Tree, context: SchematicContext) => { if (options.resetCss) { const workspaceHost = createHost(tree); const { workspace } = await workspaces.readWorkspace(tree.root.path, createHost(tree)); const result = addResetCss(workspace, tree); await workspaces.writeWorkspace(workspace, workspaceHost); if (!result) { context.logger.warn(`Could not complete adding reset styles. Those may need to be added manually.`); } } }; export default (options: Options): Rule => chain([ addNormalize(options), addDependencies(options), installPackageJsonDependencies(options), logSuccess(options) ]);