owner.js 958 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. const mongoose = require("mongoose");
  2. let emailValid = (value)=>{
  3. return /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(value);
  4. }
  5. const OwnerSchema = new mongoose.Schema({
  6. email: {
  7. type: String,
  8. required: [true, "EMAIL IS REQUIRED"],
  9. validate: {
  10. validator: emailValid,
  11. message: "INVALID EMAIL ADDRESS"
  12. },
  13. index: true
  14. },
  15. password: {
  16. type: String,
  17. required: true
  18. },
  19. pos: {
  20. type: String,
  21. required: true
  22. },
  23. square: {
  24. id: String,
  25. accessToken: String,
  26. expires: Date,
  27. refreshToken: String,
  28. location: String
  29. },
  30. createdAt: {
  31. type: Date,
  32. default: new Date()
  33. },
  34. status: [],
  35. session: {
  36. sessionId: {
  37. type: String,
  38. index: true
  39. },
  40. expiration: Date
  41. }
  42. });
  43. module.exports = mongoose.model("Owner", OwnerSchema);