UNPKG

@cuba-platform/front-generator

Version:
32 lines 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findEntityByName = exports.collectModelContext = void 0; const cuba_model_1 = require("../../../common/model/cuba-model"); const enums_generation_1 = require("./enums-generation"); /** * @param projectModel model context collected from * @return entity and enum map with fqn as key */ function collectModelContext(projectModel) { const entities = (0, cuba_model_1.getEntitiesArray)(projectModel.entities); const baseProjectEntities = (0, cuba_model_1.getEntitiesArray)(projectModel.baseProjectEntities); const entitiesMap = new Map(); const enumsMap = new Map(); (0, enums_generation_1.createEnums)(projectModel.enums).forEach(en => enumsMap.set(en.fqn, en.node)); const addEntityToMap = (map, isBaseProjectEntity = false) => (e) => { map.set(e.fqn, { isBaseProjectEntity, entity: e }); }; entities.forEach(addEntityToMap(entitiesMap)); baseProjectEntities.forEach(addEntityToMap(entitiesMap, true)); return { entitiesMap, enumsMap }; } exports.collectModelContext = collectModelContext; function findEntityByName(entityName, ctx) { return [...ctx.entitiesMap.values()] .find(entityInfo => entityInfo.entity.name === entityName); } exports.findEntityByName = findEntityByName; //# sourceMappingURL=model-utils.js.map