-
-
Notifications
You must be signed in to change notification settings - Fork 78
Expand file tree
/
Copy pathbase-generator.ts
More file actions
50 lines (44 loc) · 1.56 KB
/
base-generator.ts
File metadata and controls
50 lines (44 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import type { JHipsterCommandDefinition } from 'generator-jhipster';
import BaseApplicationGenerator from 'generator-jhipster/generators/base-application';
import type { Source as LiquibaseSource } from 'generator-jhipster/generators/liquibase';
import type {
Application as SpringBootApplication,
Config as SpringBootConfig,
Entity as SpringBootEntity,
Options as SpringBootOptions,
Source as SpringBootSource,
} from 'generator-jhipster/generators/spring-boot';
type EntityAuditBlueprintConfig = {
auditFramework?: string;
auditPage?: boolean;
entityAuditEventChangelogDate?: string;
};
type EntityAuditEntity = SpringBootEntity & {
enableAudit: boolean;
entityAuditEventType?: string;
entityAuditEnumValue?: string;
requiresPersistableImplementation?: boolean;
};
export type EntityAuditApplication = SpringBootApplication<EntityAuditEntity> & {
entityAuditEventChangelogDate: string;
auditedEntities: string[];
};
type EntityAuditSource = SpringBootSource &
LiquibaseSource & {
addEntityToAuditedEntityEnum: (param: {
entityAuditEnumValue?: string;
entityAbsoluteClass: string;
entityAuditEventType?: string;
}) => void;
};
export class EntityAuditApplicationGenerator extends BaseApplicationGenerator<
EntityAuditEntity,
EntityAuditApplication,
SpringBootConfig,
SpringBootOptions,
EntityAuditSource
> {
initialRun?: boolean;
declare blueprintConfig: EntityAuditBlueprintConfig;
}
export const asCommand = <const Def extends JHipsterCommandDefinition<EntityAuditApplicationGenerator>>(command: Def): Def => command;