UNPKG

@wearesage/schema

Version:

A flexible schema definition and validation system for TypeScript with multi-database support

35 lines (28 loc) 741 B
import "reflect-metadata"; import { Entity, Id, Property, ManyToMany } from "../../core/decorators"; // Test entity with complex relationships for edge case testing @Entity() export class ComplexUser { @Id() id: string; @Property({ required: true }) name: string; @Property({ required: true, unique: true }) email: string; @Property({ required: true }) status: 'active' | 'inactive' | 'suspended'; @Property() metadata: Record<string, any>; @ManyToMany({ target: () => ComplexUser, inverse: "managedUsers", name: "MANAGES" }) managers: ComplexUser[] = []; @ManyToMany({ target: () => ComplexUser, inverse: "managers", name: "MANAGES" }) managedUsers: ComplexUser[] = []; }