gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
86 lines (85 loc) • 4.91 kB
TypeScript
/**
* 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 type { Storage } from 'yeoman-generator';
import type { Features } from '../base/types.ts';
import BaseApplicationGenerator from '../base-application/index.ts';
import type { Application as EntityApplication, Config as EntityConfig, Entity as EntityEntity, Options as EntityOptions } from './types.ts';
export default class EntityGenerator extends BaseApplicationGenerator<EntityEntity, EntityApplication, EntityConfig, EntityOptions> {
[BaseApplicationGenerator.INITIALIZING]: Record<"parseOptions" | "loadOptions", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
[BaseApplicationGenerator.PROMPTING]: Record<"askForMicroserviceJson", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
[BaseApplicationGenerator.POST_PREPARING]: Record<"askForUpdate" | "askForFields" | "askForFieldsToRemove" | "askForRelationships" | "askForRelationsToRemove" | "askForService" | "askForDTO" | "askForFiltering" | "askForReadOnly" | "askForPagination" | "isBuiltInEntity" | "setupMicroServiceEntity" | "loadEntitySpecificOptions" | "validateEntityName" | "bootstrapConfig" | "composeEntities", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
source: import("./types.ts").Source;
} & {
application: EntityApplication;
}>>;
[BaseApplicationGenerator.END]: Record<"end", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<EntityApplication>>>;
name: string;
application: any;
microserviceConfig?: any;
entityStorage: Storage;
entityConfig: EntityEntity;
entityData: {
name: string;
filename: string;
configExisted: boolean;
entityExisted: boolean;
configurationFileExists: boolean;
useMicroserviceJson?: boolean;
skipUiGrouping?: boolean;
useConfigurationFile?: boolean;
microserviceName?: string;
microserviceFileName?: string;
microservicePath?: string;
clientRootFolder?: string;
databaseType?: string;
skipClient?: boolean;
skipServer?: boolean;
skipDbChangelog?: boolean;
updateEntity?: 'add' | 'remove' | 'none' | 'regenerate';
regenerate?: boolean;
clientFramework?: string;
reactive?: boolean;
enums?: string[];
existingEnum?: boolean;
};
constructor(args?: string[], options?: EntityOptions, features?: Features);
beforeQueue(): Promise<void>;
get initializing(): Record<"parseOptions" | "loadOptions", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
get prompting(): Record<"askForMicroserviceJson", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
get postPreparing(): Record<"askForUpdate" | "askForFields" | "askForFieldsToRemove" | "askForRelationships" | "askForRelationsToRemove" | "askForService" | "askForDTO" | "askForFiltering" | "askForReadOnly" | "askForPagination" | "isBuiltInEntity" | "setupMicroServiceEntity" | "loadEntitySpecificOptions" | "validateEntityName" | "bootstrapConfig" | "composeEntities", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
source: import("./types.ts").Source;
} & {
application: EntityApplication;
}>>;
get end(): Record<"end", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<EntityApplication>>>;
/**
* @private
* Setup Entity instance level options from context.
* all variables should be set to dest,
* all variables should be referred from context,
* all methods should be called on generator,
*/
_setupEntityOptions(): void;
/**
* @private
* Validate the entityName
* @return {true|string} true for a valid value or error message.
*/
_validateEntityName(entityName: string): true | string;
}