diff options
| author | Saatvik Arya <[email protected]> | 2024-07-23 15:21:43 -0700 |
|---|---|---|
| committer | Saatvik Arya <[email protected]> | 2024-07-23 15:21:43 -0700 |
| commit | 2569f6ce4e22ae9d3b7d494ca6a02729238ca63a (patch) | |
| tree | a06b3811721e6df5e940af1f7750761dcd0c9f37 | |
| parent | complete onboarding on skip (diff) | |
| download | supermemory-2569f6ce4e22ae9d3b7d494ca6a02729238ca63a.tar.xz supermemory-2569f6ce4e22ae9d3b7d494ca6a02729238ca63a.zip | |
tabs
| -rw-r--r-- | apps/web/app/(auth)/onboarding/page.tsx | 24 | ||||
| -rw-r--r-- | apps/web/app/actions/doers.ts | 28 | ||||
| -rw-r--r-- | apps/web/app/actions/fetchers.ts | 20 | ||||
| -rw-r--r-- | apps/web/server/db/schema.ts | 2 |
4 files changed, 37 insertions, 37 deletions
diff --git a/apps/web/app/(auth)/onboarding/page.tsx b/apps/web/app/(auth)/onboarding/page.tsx index 6e7e85d7..9728d107 100644 --- a/apps/web/app/(auth)/onboarding/page.tsx +++ b/apps/web/app/(auth)/onboarding/page.tsx @@ -22,13 +22,13 @@ export default function Home() { const { push } = useRouter(); useEffect(() => { - const updateDb = async () => { - await completeOnboarding(); - } + const updateDb = async () => { + await completeOnboarding(); + } if (currStep > 3) { - updateDb().then(() => { - push("/home?q=what%20is%20supermemory"); - }); + updateDb().then(() => { + push("/home?q=what%20is%20supermemory"); + }); } }, [currStep]); @@ -385,11 +385,11 @@ function StepTwo({ currStep }: { currStep: number }) { } function Navbar() { - const router = useRouter(); - const handleSkip = async () => { - await completeOnboarding(); - router.push("/home?q=what%20is%20supermemory"); - } + const router = useRouter(); + const handleSkip = async () => { + await completeOnboarding(); + router.push("/home?q=what%20is%20supermemory"); + } return ( <div className="flex items-center justify-between p-4 fixed top-0 left-0 w-full"> @@ -399,7 +399,7 @@ function Navbar() { className="hover:brightness-125 duration-200 size-12" /> - <button className="text-sm" onClick={handleSkip}>Skip</button> + <button className="text-sm" onClick={handleSkip}>Skip</button> </div> ); } diff --git a/apps/web/app/actions/doers.ts b/apps/web/app/actions/doers.ts index b9760d58..61ada695 100644 --- a/apps/web/app/actions/doers.ts +++ b/apps/web/app/actions/doers.ts @@ -24,26 +24,26 @@ import { redirect } from "next/navigation"; import { tweetToMd } from "@repo/shared-types/utils"; export const completeOnboarding = async (): ServerActionReturnType<boolean> => { - const data = await auth(); - - if (!data || !data.user || !data.user.id) { - redirect("/signin"); - return { error: "Not authenticated", success: false }; - } - - try { - const res = await db - .update(users) - .set({ hasOnboarded: true }) - .where(eq(users.id, data.user.id)) + const data = await auth(); + + if (!data || !data.user || !data.user.id) { + redirect("/signin"); + return { error: "Not authenticated", success: false }; + } + + try { + const res = await db + .update(users) + .set({ hasOnboarded: true }) + .where(eq(users.id, data.user.id)) .returning({ hasOnboarded: users.hasOnboarded }); if (res.length === 0 || !res[0]?.hasOnboarded) { return { success: false, data: false, error: "Failed to update user" }; } - return { success: true, data: res[0].hasOnboarded }; - } catch (e) { + return { success: true, data: res[0].hasOnboarded }; + } catch (e) { return { success: false, data: false, error: (e as Error).message }; } diff --git a/apps/web/app/actions/fetchers.ts b/apps/web/app/actions/fetchers.ts index 1114b2cd..8d6802a7 100644 --- a/apps/web/app/actions/fetchers.ts +++ b/apps/web/app/actions/fetchers.ts @@ -24,19 +24,19 @@ import { redirect } from "next/navigation"; import { cookies, headers } from "next/headers"; export const getUser = async (): ServerActionReturnType<User> => { - const data = await auth(); + const data = await auth(); - if (!data || !data.user || !data.user.id) { - redirect("/signin"); - return { error: "Not authenticated", success: false }; - } + if (!data || !data.user || !data.user.id) { + redirect("/signin"); + return { error: "Not authenticated", success: false }; + } - console.log("data.user.id", data.user.id); - const user = await db.query.users.findFirst({ - where: eq(users.id, data.user.id), - }); + console.log("data.user.id", data.user.id); + const user = await db.query.users.findFirst({ + where: eq(users.id, data.user.id), + }); - return { success: true, data: user }; + return { success: true, data: user }; }; export const getSpaces = async (): ServerActionReturnType<StoredSpace[]> => { diff --git a/apps/web/server/db/schema.ts b/apps/web/server/db/schema.ts index 8ecf29bf..8486c788 100644 --- a/apps/web/server/db/schema.ts +++ b/apps/web/server/db/schema.ts @@ -22,7 +22,7 @@ export const users = createTable( emailVerified: integer("emailVerified", { mode: "timestamp_ms" }), image: text("image"), telegramId: text("telegramId"), - hasOnboarded: integer("hasOnboarded", { mode: "boolean" }).default(false), + hasOnboarded: integer("hasOnboarded", { mode: "boolean" }).default(false), }, (user) => ({ emailIdx: index("users_email_idx").on(user.email), |