(
entity: OneToManyOptions<Owner, Target> | string | ((e?: any) => EntityName<Target>),
mappedBy?: (string & keyof Target) | ((e: Target) => any),
options: Partial<OneToManyOptions<Owner, Target>> = {},
)
| 17 | options: OneToManyOptions<Owner, Target>, |
| 18 | ): (target: Owner, propertyName: string) => void; |
| 19 | export function OneToMany<Target extends object, Owner extends object>( |
| 20 | entity: OneToManyOptions<Owner, Target> | string | ((e?: any) => EntityName<Target>), |
| 21 | mappedBy?: (string & keyof Target) | ((e: Target) => any), |
| 22 | options: Partial<OneToManyOptions<Owner, Target>> = {}, |
| 23 | ): (target: Owner, propertyName: string) => void { |
| 24 | return function (target: Owner, propertyName: string) { |
| 25 | options = processDecoratorParameters<OneToManyOptions<Owner, Target>>({ entity, mappedBy, options }); |
| 26 | const meta = getMetadataFromDecorator(target.constructor as Target); |
| 27 | validateSingleDecorator(meta, propertyName, ReferenceKind.ONE_TO_MANY); |
| 28 | const property = { name: propertyName, kind: ReferenceKind.ONE_TO_MANY } as EntityProperty<Target>; |
| 29 | meta.properties[propertyName as EntityKey<Target>] = Object.assign( |
| 30 | meta.properties[propertyName as EntityKey<Target>] ?? {}, |
| 31 | property, |
| 32 | options, |
| 33 | ); |
| 34 | }; |
| 35 | } |
no test coverage detected