UNPKG

gen-jhipster

Version:

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

40 lines (39 loc) 1.95 kB
/** * Copyright 2013-2026 the original author or authors from the JHipster project. * * This file is part of the JHipster project, see https://www.jhipster.tech/ * for more information. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { fieldTypes } from "../../../lib/jhipster/index.js"; import { asPostPreparingEachEntityTask } from "../../base-application/support/task-type-inference.js"; const { CommonDBTypes } = fieldTypes; const { LONG: TYPE_LONG, INTEGER: TYPE_INTEGER } = CommonDBTypes; export default asPostPreparingEachEntityTask(function postPrepareEntity({ application, entity, }) { const { relationships, builtIn, name, primaryKey } = entity; if (builtIn && name === 'User' && primaryKey) { const userIdType = primaryKey.type; const idField = primaryKey.fields[0]; const idFieldName = idField.fieldName ?? 'id'; const liquibaseFakeData = application.generateUserManagement ? [ { [idFieldName]: [TYPE_INTEGER, TYPE_LONG].includes(userIdType) ? 1 : idField.generateFakeData() }, { [idFieldName]: [TYPE_INTEGER, TYPE_LONG].includes(userIdType) ? 2 : idField.generateFakeData() }, ] : []; entity.liquibaseFakeData = liquibaseFakeData; entity.fakeDataCount = liquibaseFakeData.length; } entity.anyRelationshipIsOwnerSide = relationships.some(relationship => relationship.ownerSide); });