song.js 882 B

1234567891011121314151617181920
  1. export default {
  2. youtubeId: { type: String, min: 11, max: 11, required: true, index: true, unique: true },
  3. title: { type: String, required: true },
  4. artists: [{ type: String, default: [] }],
  5. genres: [{ type: String, default: [] }],
  6. tags: [{ type: String, default: [] }],
  7. duration: { type: Number, min: 1, required: true },
  8. skipDuration: { type: Number, required: true, default: 0 },
  9. thumbnail: { type: String },
  10. likes: { type: Number, default: 0, required: true },
  11. dislikes: { type: Number, default: 0, required: true },
  12. explicit: { type: Boolean },
  13. requestedBy: { type: String },
  14. requestedAt: { type: Date },
  15. verifiedBy: { type: String },
  16. verifiedAt: { type: Date },
  17. discogs: { type: Object },
  18. status: { type: String, required: true, default: "hidden", enum: ["hidden", "unverified", "verified"] },
  19. documentVersion: { type: Number, default: 6, required: true }
  20. };