@wearesage/schema
Version:
A flexible schema definition and validation system for TypeScript with multi-database support
38 lines (31 loc) • 709 B
text/typescript
import "reflect-metadata";
import { Entity, Id, Property, OneToMany, ManyToOne } from "../..";
import { User } from "./User";
import { OrderItem } from "./OrderItem";
/**
* An Order belongs to exactly one User,
* and can have multiple OrderItems.
*/
()
export class Order {
()
id: string;
({ required: true })
orderNumber: string; // e.g. "2025-0001"
({ default: () => new Date() })
createdAt: Date;
()
shippedAt: Date;
({
target: () => User,
inverse: "orders",
name: "BELONGS_TO",
})
user: User;
({
target: () => OrderItem,
inverse: "order",
name: "HAS_ITEM",
})
items: OrderItem[] = [];
}