feat: add user invite management (#338)

* feat: add invite management page

* refactor: improve existing translations

* test: add test for invite router

* feat: update mysql schema to match sqlite schema

* fix: format issues

* fix: deepsource issues

* fix: lint issues

* chore: address pull request feedback
This commit is contained in:
Meier Lukas
2024-04-29 12:09:34 +02:00
committed by GitHub
parent 16e42d654d
commit 621f6c81ae
20 changed files with 1506 additions and 59 deletions

View File

@@ -89,6 +89,17 @@ export const verificationTokens = sqliteTable(
}),
);
export const invites = sqliteTable("invite", {
id: text("id").notNull().primaryKey(),
token: text("token").notNull().unique(),
expirationDate: int("expiration_date", {
mode: "timestamp",
}).notNull(),
creatorId: text("creator_id")
.notNull()
.references(() => users.id, { onDelete: "cascade" }),
});
export const integrations = sqliteTable(
"integration",
{
@@ -231,6 +242,14 @@ export const userRelations = relations(users, ({ many }) => ({
accounts: many(accounts),
boards: many(boards),
boardPermissions: many(boardPermissions),
invites: many(invites),
}));
export const inviteRelations = relations(invites, ({ one }) => ({
creator: one(users, {
fields: [invites.creatorId],
references: [users.id],
}),
}));
export const sessionRelations = relations(sessions, ({ one }) => ({