A web application allowing people to create an account, configure a profile, and share a list of URLs on that profile.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

34 lines
835 B

// category.js
// Copyright (C) 2021 Digital Telepresence, LLC
// License: Apache-2.0
'use strict';
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const CategorySchema = new Schema({
domain: { type: Schema.ObjectId, required: true, index: 1, ref: 'Domain' },
name: { type: String },
slug: { type: String, lowercase: true, required: true, index: 1 },
description: { type: String },
images: {
header: { type: Schema.ObjectId },
icon: { type: Schema.ObjectId },
},
stats: {
liveChannelCount: { type: Number, default: 0, required: true },
currentViewerCount: { type: Number, default: 0, required: true },
},
});
CategorySchema.index({
domain: 1,
slug: 1,
}, {
unique: true,
name: 'domain_category_unique',
});
module.exports = mongoose.model('Category', CategorySchema);