diff options
| author | Dhravya <[email protected]> | 2024-02-26 17:53:38 -0700 |
|---|---|---|
| committer | Dhravya <[email protected]> | 2024-02-26 17:53:38 -0700 |
| commit | eba818ffb4ca84f24f4d29924533bc2c098c88ce (patch) | |
| tree | 542bbc30559a93bc4569fcc103e9cc2fdc20e50c /apps/anycontext-front/src/server | |
| parent | chaos (diff) | |
| download | supermemory-eba818ffb4ca84f24f4d29924533bc2c098c88ce.tar.xz supermemory-eba818ffb4ca84f24f4d29924533bc2c098c88ce.zip | |
EVERYTHING WORKING PERFECTLY
Diffstat (limited to 'apps/anycontext-front/src/server')
| -rw-r--r-- | apps/anycontext-front/src/server/auth.ts | 37 | ||||
| -rw-r--r-- | apps/anycontext-front/src/server/db/index.ts | 8 | ||||
| -rw-r--r-- | apps/anycontext-front/src/server/db/schema.ts | 111 |
3 files changed, 0 insertions, 156 deletions
diff --git a/apps/anycontext-front/src/server/auth.ts b/apps/anycontext-front/src/server/auth.ts deleted file mode 100644 index 3b8d749e..00000000 --- a/apps/anycontext-front/src/server/auth.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { env } from "@/env"; -import { DrizzleAdapter } from "@auth/drizzle-adapter"; -import NextAuth, { DefaultSession } from "next-auth"; -import { Adapter } from "next-auth/adapters"; -import Google from "next-auth/providers/google"; -import { db } from "./db"; -import { createTable } from "./db/schema"; - -export const { - handlers: { GET, POST }, - auth, -} = NextAuth({ - secret: env.NEXTAUTH_SECRET, - callbacks: { - session: ({session, token}) => ({ - ...session, - user: { - ...session.user, - id: token.id as string, - token - }, - }) - }, - adapter: DrizzleAdapter(db, createTable) as Adapter, - providers: [ - Google({ - clientId: env.GOOGLE_CLIENT_ID, - clientSecret: env.GOOGLE_CLIENT_SECRET, - authorization: { - params: { - prompt: "consent", - response_type: "code", - }, - }, - }), - ], -}); diff --git a/apps/anycontext-front/src/server/db/index.ts b/apps/anycontext-front/src/server/db/index.ts deleted file mode 100644 index b4f4d4ce..00000000 --- a/apps/anycontext-front/src/server/db/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { drizzle } from 'drizzle-orm/d1'; - -import * as schema from "./schema"; - -export const db = drizzle( - process.env.DATABASE as unknown as D1Database, - { schema } -); diff --git a/apps/anycontext-front/src/server/db/schema.ts b/apps/anycontext-front/src/server/db/schema.ts deleted file mode 100644 index 7de02f15..00000000 --- a/apps/anycontext-front/src/server/db/schema.ts +++ /dev/null @@ -1,111 +0,0 @@ -import { relations, sql } from "drizzle-orm"; -import { - index, - int, - primaryKey, - sqliteTableCreator, - text, -} from "drizzle-orm/sqlite-core"; -import { type AdapterAccount } from "next-auth/adapters"; - -/** - * This is an example of how to use the multi-project schema feature of Drizzle ORM. Use the same - * database instance for multiple projects. - * - * @see https://orm.drizzle.team/docs/goodies#multi-project-schema - */ -export const createTable = sqliteTableCreator((name) => `anycontext_${name}`); - -export const posts = createTable( - "post", - { - id: int("id", { mode: "number" }).primaryKey({ autoIncrement: true }), - name: text("name", { length: 256 }), - createdById: text("createdById", { length: 255 }) - .notNull() - .references(() => users.id), - createdAt: int("created_at", { mode: "timestamp" }) - .default(sql`CURRENT_TIMESTAMP`) - .notNull(), - updatedAt: int("updatedAt", { mode: "timestamp" }), - }, - (example) => ({ - createdByIdIdx: index("createdById_idx").on(example.createdById), - nameIndex: index("name_idx").on(example.name), - }) -); - -export const users = createTable("user", { - id: text("id", { length: 255 }).notNull().primaryKey(), - name: text("name", { length: 255 }), - email: text("email", { length: 255 }).notNull(), - emailVerified: int("emailVerified", { - mode: "timestamp", - }).default(sql`CURRENT_TIMESTAMP`), - image: text("image", { length: 255 }), -}); - -export const usersRelations = relations(users, ({ many }) => ({ - accounts: many(accounts), -})); - -export const accounts = createTable( - "account", - { - userId: text("userId", { length: 255 }) - .notNull() - .references(() => users.id), - type: text("type", { length: 255 }) - .$type<AdapterAccount["type"]>() - .notNull(), - provider: text("provider", { length: 255 }).notNull(), - providerAccountId: text("providerAccountId", { length: 255 }).notNull(), - refresh_token: text("refresh_token"), - access_token: text("access_token"), - expires_at: int("expires_at"), - token_type: text("token_type", { length: 255 }), - scope: text("scope", { length: 255 }), - id_token: text("id_token"), - session_state: text("session_state", { length: 255 }), - }, - (account) => ({ - compoundKey: primaryKey({ - columns: [account.provider, account.providerAccountId], - }), - userIdIdx: index("account_userId_idx").on(account.userId), - }) -); - -export const accountsRelations = relations(accounts, ({ one }) => ({ - user: one(users, { fields: [accounts.userId], references: [users.id] }), -})); - -export const sessions = createTable( - "session", - { - sessionToken: text("sessionToken", { length: 255 }).notNull().primaryKey(), - userId: text("userId", { length: 255 }) - .notNull() - .references(() => users.id), - expires: int("expires", { mode: "timestamp" }).notNull(), - }, - (session) => ({ - userIdIdx: index("session_userId_idx").on(session.userId), - }) -); - -export const sessionsRelations = relations(sessions, ({ one }) => ({ - user: one(users, { fields: [sessions.userId], references: [users.id] }), -})); - -export const verificationTokens = createTable( - "verificationToken", - { - identifier: text("identifier", { length: 255 }).notNull(), - token: text("token", { length: 255 }).notNull(), - expires: int("expires", { mode: "timestamp" }).notNull(), - }, - (vt) => ({ - compoundKey: primaryKey({ columns: [vt.identifier, vt.token] }), - }) -); |