station.js 1012 B

1234567891011121314151617181920
  1. module.exports = {
  2. id: { type: String, lowercase: true, max: 16, min: 2, index: true, unique: true, required: true },
  3. type: { type: String, enum: ["official", "community"], required: true },
  4. displayName: { type: String, min: 2, max: 32, required: true },
  5. description: { type: String, min: 2, max: 128, required: true },
  6. paused: { type: Boolean, default: false, required: true },
  7. currentSong: {
  8. id: { type: String, unique: true, required: true },
  9. title: { type: String, required: true },
  10. artists: [{ type: String }],
  11. duration: { type: String, required: true },
  12. thumbnail: { type: String, required: true }
  13. },
  14. currentSongIndex: { type: Number, default: 0, required: true },
  15. timePaused: { type: Number, default: 0, required: true },
  16. playlist: { type: Array, required: true },
  17. genres: [{ type: String }],
  18. privacy: { type: String, enum: ["public", "unlisted", "private"], default: "private" },//Used for Community stations
  19. locked: { type: Boolean, default: true }//Used for Official stations
  20. };