next/models/challenges/ficmas.ts
2023-09-25 19:26:13 -04:00

46 lines
1.0 KiB
TypeScript

import mongoose, {Schema, PopulatedDoc, Document, Model, model} from "mongoose";
import { IBand } from "../../models/band";
import { IUser } from "../../models/user";
import SequenceFactory from "mongoose-sequence";
import { hasMigrated } from "../../lib/dbconfig";
const AutoIncrement = SequenceFactory(mongoose);
export interface IFicmas {
_id: number;
kink: string;
year: string;
bands: PopulatedDoc<IBand & Document>[];
relationship: string;
wisher: PopulatedDoc<IUser & Document>;
anniversary: boolean;
}
export const FicmasSchema = new mongoose.Schema<IFicmas>({
_id: {
type: Number
},
kink: {
type: String
},
year: { type: String },
bands: [{
type: Number,
ref: "Band"
}],
relationship: { type: String },
wisher: {
type: Number,
ref: "User"
},
anniversary: {
type: Boolean,
default: false
}
})
hasMigrated && FicmasSchema.plugin(AutoIncrement, {id: "ficmas_wishes"})
export const Ficmas: Model<IFicmas> = /* mongoose.models.Ficmas || */ model("Ficmas", FicmasSchema, "ficmas_wishes")