summaryrefslogtreecommitdiffhomepage
path: root/packages/console/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/console/core/src')
-rw-r--r--packages/console/core/src/identifier.ts1
-rw-r--r--packages/console/core/src/schema/auth.sql.ts16
2 files changed, 17 insertions, 0 deletions
diff --git a/packages/console/core/src/identifier.ts b/packages/console/core/src/identifier.ts
index 502ad6ac2..8fdf79cde 100644
--- a/packages/console/core/src/identifier.ts
+++ b/packages/console/core/src/identifier.ts
@@ -4,6 +4,7 @@ import { z } from "zod"
export namespace Identifier {
const prefixes = {
account: "acc",
+ auth: "aut",
billing: "bil",
key: "key",
model: "mod",
diff --git a/packages/console/core/src/schema/auth.sql.ts b/packages/console/core/src/schema/auth.sql.ts
new file mode 100644
index 000000000..be2244ef3
--- /dev/null
+++ b/packages/console/core/src/schema/auth.sql.ts
@@ -0,0 +1,16 @@
+import { mysqlEnum, mysqlTable, uniqueIndex, varchar } from "drizzle-orm/mysql-core"
+import { id, timestamps, ulid } from "../drizzle/types"
+
+export const AuthProvider = ["email", "github", "google"] as const
+
+export const AuthTable = mysqlTable(
+ "auth",
+ {
+ id: id(),
+ ...timestamps,
+ provider: mysqlEnum("provider", AuthProvider).notNull(),
+ subject: varchar("subject", { length: 255 }).notNull(),
+ accountID: ulid("account_id").notNull(),
+ },
+ (table) => [uniqueIndex("provider").on(table.provider, table.subject)],
+)