From b880f7edf92134a942a4b61659971daa9eaeaece Mon Sep 17 00:00:00 2001 From: Mahesh Sanikommmu Date: Thu, 11 Dec 2025 13:35:40 -0800 Subject: [PATCH] few more updates --- apps/web/app/layout.tsx | 4 +- apps/web/app/new/page.tsx | 6 +- apps/web/app/onboarding/page.tsx | 34 ++++--- apps/web/app/onboarding/setup/header.tsx | 6 +- apps/web/app/onboarding/setup/page.tsx | 50 ---------- .../onboarding/setup/relatable-question.tsx | 93 ++++++++++++------- .../app/onboarding/welcome/memories-step.tsx | 81 ++++++++-------- apps/web/components/chat/index.tsx | 16 ++-- apps/web/components/chat/input/actions.tsx | 20 +++- apps/web/components/chat/input/index.tsx | 8 +- .../chat/message/related-memories.tsx | 2 +- .../components/chat/message/user-message.tsx | 2 +- apps/web/components/initial-header.tsx | 7 +- .../new/animated-gradient-background.tsx | 68 ++++++++++++++ .../new/document-cards/file-preview.tsx | 63 ++++++++++++- .../new/document-cards/mcp-preview.tsx | 2 +- apps/web/components/new/header.tsx | 8 +- apps/web/components/nova/nova-orb.tsx | 2 +- packages/ui/pages/login.tsx | 15 +-- 19 files changed, 311 insertions(+), 176 deletions(-) delete mode 100644 apps/web/app/onboarding/setup/page.tsx create mode 100644 apps/web/components/new/animated-gradient-background.tsx diff --git a/apps/web/app/layout.tsx b/apps/web/app/layout.tsx index 707e4185..07106558 100644 --- a/apps/web/app/layout.tsx +++ b/apps/web/app/layout.tsx @@ -39,8 +39,8 @@ export default function RootLayout({ > +
+
-
diff --git a/apps/web/app/onboarding/page.tsx b/apps/web/app/onboarding/page.tsx index ec0e7d6c..09e4a470 100644 --- a/apps/web/app/onboarding/page.tsx +++ b/apps/web/app/onboarding/page.tsx @@ -20,7 +20,7 @@ import { SetupHeader } from "./setup/header" import { ChatSidebar } from "./setup/chat-sidebar" import { Logo } from "@ui/assets/Logo" import NovaOrb from "@/components/nova/nova-orb" -import { AnimatedGradientBackground } from "./setup/page" +import { AnimatedGradientBackground } from "@/components/new/animated-gradient-background" function UserSupermemory({ name }: { name: string }) { return ( @@ -33,7 +33,9 @@ function UserSupermemory({ name }: { name: string }) { >
-

{name}'s

+

+ {name.split(" ")[0]}'s +

supermemory

@@ -57,6 +59,7 @@ export default function OnboardingPage() { description: string otherLinks: string[] } | null>(null) + const [showWelcomeContent, setShowWelcomeContent] = useState(false) const currentFlow = flow || "welcome" const currentStep = step || "input" @@ -68,6 +71,16 @@ export default function OnboardingPage() { } }, [user?.name]) + useEffect(() => { + if (currentFlow === "welcome" && currentStep === "input") { + setShowWelcomeContent(false) + const timer = setTimeout(() => { + setShowWelcomeContent(true) + }, 1250) + return () => clearTimeout(timer) + } + }, [currentFlow, currentStep]) + useEffect(() => { if (currentFlow !== "welcome") return @@ -179,10 +192,14 @@ export default function OnboardingPage() { {isSetupFlow && } - {isWelcomeFlow && ( -
+ {isWelcomeFlow && currentStep === "input" && ( + + )} + + {isWelcomeFlow && showWelcomeContent && ( +
diff --git a/apps/web/app/onboarding/setup/header.tsx b/apps/web/app/onboarding/setup/header.tsx index e452a57b..95121b06 100644 --- a/apps/web/app/onboarding/setup/header.tsx +++ b/apps/web/app/onboarding/setup/header.tsx @@ -14,6 +14,8 @@ export function SetupHeader() { setName(storedName) }, []) + const userName = name ? `${name.split(" ")[0]}'s` : "My" + return ( {name && (
-

{name}'s

+

+ {userName} +

supermemory

diff --git a/apps/web/app/onboarding/setup/page.tsx b/apps/web/app/onboarding/setup/page.tsx deleted file mode 100644 index 7437e49f..00000000 --- a/apps/web/app/onboarding/setup/page.tsx +++ /dev/null @@ -1,50 +0,0 @@ -import { motion } from "motion/react" - -export function AnimatedGradientBackground() { - return ( -
- - - -
- ) -} diff --git a/apps/web/app/onboarding/setup/relatable-question.tsx b/apps/web/app/onboarding/setup/relatable-question.tsx index a4f2dc99..5e65140e 100644 --- a/apps/web/app/onboarding/setup/relatable-question.tsx +++ b/apps/web/app/onboarding/setup/relatable-question.tsx @@ -1,7 +1,7 @@ "use client" import { useState } from "react" -import { motion } from "motion/react" +import { motion, AnimatePresence } from "motion/react" import { Button } from "@ui/components/button" import { useRouter } from "next/navigation" import { cn } from "@lib/utils" @@ -62,48 +62,71 @@ export function RelatableQuestion() { )} > {relatableOptions.map((option, index) => ( - + }} + onKeyDown={(e) => { + if (e.key === "Enter" || e.key === " ") { + e.preventDefault() + setSelectedOptions((prev) => + prev.includes(index) + ? prev.filter((i) => i !== index) + : [...prev, index], + ) + } + }} + type="button" + > + + {selectedOptions.includes(index) && ( + + )} + +
+ + {option.emoji} + +

+ {option.text} +

+
+ +
))}
diff --git a/apps/web/app/onboarding/welcome/memories-step.tsx b/apps/web/app/onboarding/welcome/memories-step.tsx index 11de1506..5545a723 100644 --- a/apps/web/app/onboarding/welcome/memories-step.tsx +++ b/apps/web/app/onboarding/welcome/memories-step.tsx @@ -114,7 +114,7 @@ export function MemoriesStep({ onSubmit }: MemoriesStepProps) { Let's add your memories -
+