export const teamsT = mysqlTable("Teams", {
id: varchar("id", { length: 21 }).primaryKey(),
name: varchar("name", { length: 40 }).notNull(),
joinCode: varchar("joinCode", { length: 8 }).notNull(),
});
export const projectsT = mysqlTable("Projects", {
id: varchar("id", { length: 21 }).primaryKey(),
teamId: varchar("teamId", { length: 21 }).notNull(),
name: varchar("name", { length: 40 }).notNull(),
description: varchar("description", { length: 255 }).notNull(),
content: text("content").notNull(),
submitted: boolean("submitted").notNull(),
submittedTime: timestamp("submittedTime"),
});
export const teamsRelations = relations(teamsT, ({ one, many }) => ({
project: one(projectsT, {
fields: [teamsT.id],
references: [projectsT.teamId],
}),
}));
export const projectsRelations = relations(projectsT, ({ one, many }) => ({
team: one(teamsT, {
fields: [projectsT.teamId],
references: [teamsT.id],
}),
}));
export const teamsT = mysqlTable("Teams", {
id: varchar("id", { length: 21 }).primaryKey(),
name: varchar("name", { length: 40 }).notNull(),
joinCode: varchar("joinCode", { length: 8 }).notNull(),
});
export const projectsT = mysqlTable("Projects", {
id: varchar("id", { length: 21 }).primaryKey(),
teamId: varchar("teamId", { length: 21 }).notNull(),
name: varchar("name", { length: 40 }).notNull(),
description: varchar("description", { length: 255 }).notNull(),
content: text("content").notNull(),
submitted: boolean("submitted").notNull(),
submittedTime: timestamp("submittedTime"),
});
export const teamsRelations = relations(teamsT, ({ one, many }) => ({
project: one(projectsT, {
fields: [teamsT.id],
references: [projectsT.teamId],
}),
}));
export const projectsRelations = relations(projectsT, ({ one, many }) => ({
team: one(teamsT, {
fields: [projectsT.teamId],
references: [teamsT.id],
}),
}));