Migrate project from typing_practiceweb

This commit is contained in:
2026-05-14 16:04:14 +08:00
parent dbc5425706
commit 0e87d5546d
225 changed files with 92811 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
// server/models/TowerDefenseSave.ts
import mongoose, { Document, Schema } from 'mongoose';
export interface ITowerDefenseSave extends Document {
userId: mongoose.Types.ObjectId;
name: string; // e.g. timestamp string
state: any; // arbitrary game state JSON
createdAt: Date;
updatedAt: Date;
}
const towerDefenseSaveSchema = new Schema<ITowerDefenseSave>({
userId: {
type: Schema.Types.ObjectId,
ref: 'User',
required: true
},
name: {
type: String,
required: true
},
state: {
type: Schema.Types.Mixed,
required: true
}
}, {
timestamps: true
});
towerDefenseSaveSchema.index({ userId: 1, createdAt: -1 });
export const TowerDefenseSave = mongoose.model<ITowerDefenseSave>(
'TowerDefenseSave',
towerDefenseSaveSchema
);