Fix relation attribute type, add back relation and target properties

This commit is contained in:
Convly 2023-06-09 09:57:21 +02:00
parent 517212d141
commit 78e6952af9

View File

@ -7,6 +7,10 @@ export type BasicRelationType =
| 'manyToMany'
| 'morphOne'
| 'morphMany';
export type BasicMorphRelationType = Extract<
BasicRelationType,
Utils.String.Prefix<string, 'morph'>
>;
export type PolymorphicRelationType = 'morphToOne' | 'morphToMany';
export type RelationType = BasicRelationType | PolymorphicRelationType;
@ -17,7 +21,7 @@ export type BasicRelationProperties<
> = {
relation: TRelationType;
target: TTarget;
} & TRelationType extends Utils.String.Suffix<'morph', 'One' | 'Many'>
} & (TRelationType extends BasicMorphRelationType
? {
morphBy?: Utils.Object.KeysBy<
Common.Schemas[TTarget]['attributes'],
@ -27,7 +31,7 @@ export type BasicRelationProperties<
: {
inversedBy?: RelationsKeysFromTo<TTarget, TOrigin>;
mappedBy?: RelationsKeysFromTo<TTarget, TOrigin>;
};
});
export interface PolymorphicRelationProperties<TRelationType extends PolymorphicRelationType> {
relation: TRelationType;