UNPKG

pl4y-data-library

Version:

This library contains the dtos, enums, schemas, and other data objects needed in the pl4y ecosystem.

34 lines (27 loc) 887 B
import { Prop, Schema, SchemaFactory } from "@nestjs/mongoose"; import { Document, Types } from "mongoose"; import { ProductStatus } from "../enums/product-status.enum"; // Defines the interface for your document export type ValidityDocument = Validity & Document; @Schema() export class Validity { @Prop({ type: Types.ObjectId, ref: "Product", required: true, unique: true, }) productId: Types.ObjectId; @Prop({ type: Date, required: true }) startDate: Date; @Prop({ type: Date, required: true }) endDate: Date; @Prop({ type: String, enum: Object.values(ProductStatus).filter((value) => typeof value === "string"), default: ProductStatus.ACTIVE, }) status: ProductStatus; } // Generates the actual Mongoose Schema export const ValiditySchema = SchemaFactory.createForClass(Validity);