import mongoose from "mongoose"; import { nanoid } from "nanoid"; const announcementSchema = new mongoose.Schema( { uniqueId: { type: String, unique: true, }, sentTo: { type: [String], enum: ["PDs", "RDs", "SCs", "TMs"], required: true, }, message: { type: String, required: true, maxlength: 250, }, }, { timestamps: true } ); // Pre-save middleware to dynamically generate a uniqueId before saving announcementSchema.pre("save", function (next) { if (!this.uniqueId) { this.uniqueId = nanoid(6); // Generate a 6-character unique ID } next(); }); export const AnnouncemntModal = mongoose.model( "Announcements", announcementSchema );