import { Rule, SchematicContext, Tree, chain, schematic } from '@angular-devkit/schematics'; import { ComponentType } from '../../updates/update-modules.gen'; import { JeovaSchematicsEnum } from '../../../shared/jeova-schematics.enum'; import { Model } from '@vmfvmf/ywtc-lib'; import { classify } from '@angular-devkit/core/src/utils/strings'; import { FrontEndGenerator } from '../../../shared/generator'; import { getPrjSrd } from '../../../router.gen'; export function gen(model: Model): Rule { return (tree: Tree, _context: SchematicContext) => { const componentName = classify(model.name) + 'UpdateDialogComponent'; const componentType = ComponentType.EDITION_DIALOG; const rule = chain([ new FrontEndGenerator(__filename).gen({...model, ...getPrjSrd()}), schematic(JeovaSchematicsEnum.UPDATE_FRONTEND_MODULE, {componentName, componentType}) ]); return rule(tree, _context); }; }