contact.js 797 B

12345678910111213141516171819202122232425262728293031323334
  1. const mongoose = require("mongoose");
  2. const { Schema, model, SchemaTypes } = mongoose;
  3. const mongoosePaginate = require("mongoose-paginate-v2");
  4. mongoose.Types.ObjectId.isValid();
  5. const contactSchema = new Schema(
  6. {
  7. name: {
  8. type: String,
  9. required: [true, "Set name for contact"],
  10. },
  11. phone: {
  12. type: String,
  13. unique: true,
  14. required: [true, "Set phone number for current user"],
  15. },
  16. subscription: {
  17. type: String,
  18. enum: ["free", "pro", "premium"],
  19. required: [true, "Set subscription for current user"],
  20. },
  21. owner: {
  22. type: SchemaTypes.ObjectId,
  23. ref: "user",
  24. },
  25. },
  26. { timestamps: true }
  27. );
  28. contactSchema.plugin(mongoosePaginate);
  29. const Contact = model("contact", contactSchema);
  30. module.exports = Contact;