UNPKG

generator-begcode

Version:

Spring Boot + Angular/React/Vue in one handy generator

34 lines (33 loc) 1.08 kB
import { rulesNames } from './rules.js'; import FieldIssue from './issues/field-issue.js'; let issues; export function checkFields(entityName, fieldDeclarations) { if (fieldDeclarations.length === 0) { return []; } issues = []; checkForDuplicatedFields(entityName, fieldDeclarations); return issues; } function checkForDuplicatedFields(entityName, fieldDeclarations) { const fieldNames = new Set(); const duplicatedFieldIssues = new Map(); fieldDeclarations.forEach(fieldDeclaration => { const fieldName = fieldDeclaration.children.NAME[0].image; if (fieldNames.has(fieldName)) { if (!duplicatedFieldIssues.has(fieldName)) { duplicatedFieldIssues.set(fieldName, new FieldIssue({ ruleName: rulesNames.FLD_DUPLICATED, fieldName, entityName, })); } } else { fieldNames.add(fieldName); } }); duplicatedFieldIssues.forEach(issue => { issues.push(issue); }); }