generator-begcode
Version:
Spring Boot + Angular/React/Vue in one handy generator
46 lines (45 loc) • 1.8 kB
TypeScript
import { RelationshipSide, JDLRelationshipType } from '../basic-types/relationships.js';
export type JDLRelationshipOptions = Record<'global' | 'source' | 'destination', Record<string, any>>;
export type JDLSourceEntitySide = {
sourceEntity: string;
injectedFieldInSourceEntity?: string;
injectedFieldInSourceIsRequired: boolean;
commentForSourceEntity?: string;
};
export type JDLRelationshipModel = {
side?: RelationshipSide;
from: string;
to: string;
type: JDLRelationshipType;
options: JDLRelationshipOptions;
injectedFieldInFrom?: string | null;
injectedFieldInTo?: string | null;
isInjectedFieldInFromRequired: boolean;
isInjectedFieldInToRequired: boolean;
commentInFrom?: string | null;
commentInTo?: string | null;
};
export default class JDLRelationship implements JDLRelationshipModel {
side?: RelationshipSide;
from: string;
to: string;
type: JDLRelationshipType;
options: {
global: Record<string, any>;
source: Record<string, any>;
destination: Record<string, any>;
};
injectedFieldInFrom?: string | null;
injectedFieldInTo?: string | null;
isInjectedFieldInFromRequired: boolean;
isInjectedFieldInToRequired: boolean;
commentInFrom?: string | null;
commentInTo?: string | null;
constructor(args: Partial<JDLRelationshipModel> & Pick<JDLRelationshipModel, 'from' | 'to' | 'type'>);
getId(): string;
hasGlobalOption(option: string): boolean;
forEachGlobalOption(passedFunction: (optionName: string, value: any) => void): void;
forEachSourceOption(passedFunction: (optionName: string, value: any) => void): void;
forEachDestinationOption(passedFunction: (optionName: string, value: any) => void): void;
toString(): string;
}