mirror of
https://github.com/Litlyx/litlyx
synced 2025-12-10 07:48:37 +01:00
add members | phase 1
This commit is contained in:
22
shared/schema/TeamMemberSchema.ts
Normal file
22
shared/schema/TeamMemberSchema.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { model, Schema, Types } from 'mongoose';
|
||||
|
||||
export type TeamMemberRole = 'ADMIN' | 'GUEST';
|
||||
|
||||
export type TTeamMember = {
|
||||
_id: Schema.Types.ObjectId,
|
||||
project_id: Schema.Types.ObjectId,
|
||||
user_id: Schema.Types.ObjectId,
|
||||
role: TeamMemberRole,
|
||||
pending: boolean,
|
||||
created_at: Date,
|
||||
}
|
||||
|
||||
const TeamMemberSchema = new Schema<TTeamMember>({
|
||||
project_id: { type: Types.ObjectId, index: true },
|
||||
user_id: { type: Types.ObjectId, index: true },
|
||||
role: { type: String, required: true },
|
||||
pending: { type: Boolean, required: true },
|
||||
created_at: { type: Date, required: true, default: () => Date.now() },
|
||||
});
|
||||
|
||||
export const TeamMemberModel = model<TTeamMember>('team_members', TeamMemberSchema);
|
||||
Reference in New Issue
Block a user