p5.js-web-editor/server/models/project.js

25 lines
670 B
JavaScript
Raw Normal View History

import mongoose from 'mongoose';
const Schema = mongoose.Schema;
2016-06-17 20:40:13 +00:00
import shortid from 'shortid';
2016-06-29 16:52:16 +00:00
const defaultSketch = `setup() {
createCanvas(400, 400);
}
draw() {
background(220);
}`
2016-06-17 18:11:52 +00:00
const fileSchema = new Schema({
2016-06-23 22:29:55 +00:00
name: { type: String, default: 'sketch.js' },
2016-06-29 16:52:16 +00:00
content: { type: String, default: defaultSketch }
2016-06-23 22:29:55 +00:00
}, { timestamps: true });
2016-06-17 18:11:52 +00:00
const projectSchema = new Schema({
2016-06-23 22:29:55 +00:00
name: { type: String, default: "Hello p5.js, it's the server" },
user: { type: Schema.Types.ObjectId, ref: 'User' },
file: { type: fileSchema },
_id: { type: String, default: shortid.generate }
}, { timestamps: true });
2016-06-23 22:29:55 +00:00
export default mongoose.model('Project', projectSchema);