From ce1e35a3cfe9231ed36298613d6c599fd0a85567 Mon Sep 17 00:00:00 2001 From: shafin-r Date: Sun, 18 Jan 2026 18:54:25 +0600 Subject: [PATCH] feat(pages): add lessons page --- src/assets/Video-Placeholder.png | Bin 0 -> 10062 bytes src/components/ui/tabs.tsx | 24 ++++---- src/pages/student/Home.tsx | 8 +-- src/pages/student/Lessons.tsx | 92 ++++++++++++++++++++++++------- 4 files changed, 88 insertions(+), 36 deletions(-) create mode 100644 src/assets/Video-Placeholder.png diff --git a/src/assets/Video-Placeholder.png b/src/assets/Video-Placeholder.png new file mode 100644 index 0000000000000000000000000000000000000000..a5278f725ebc2601d9e76648c9bfb1b6d6d8f575 GIT binary patch literal 10062 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 - ) + ); } function TabsList({ @@ -24,12 +24,12 @@ function TabsList({ - ) + ); } function TabsTrigger({ @@ -40,12 +40,12 @@ function TabsTrigger({ - ) + ); } function TabsContent({ @@ -58,7 +58,7 @@ function TabsContent({ className={cn("flex-1 outline-none", className)} {...props} /> - ) + ); } -export { Tabs, TabsList, TabsTrigger, TabsContent } +export { Tabs, TabsList, TabsTrigger, TabsContent }; diff --git a/src/pages/student/Home.tsx b/src/pages/student/Home.tsx index fd539f9..7c7cf4a 100644 --- a/src/pages/student/Home.tsx +++ b/src/pages/student/Home.tsx @@ -35,13 +35,13 @@ export const Home = () => { useEffect(() => { const sortPracticeSheets = (sheets: PracticeSheet[]) => { const notStarted = sheets.filter( - (sheet) => sheet.user_status === "NOT_STARTED" + (sheet) => sheet.user_status === "NOT_STARTED", ); const inProgress = sheets.filter( - (sheet) => sheet.user_status === "in-progress" + (sheet) => sheet.user_status === "in-progress", ); const completed = sheets.filter( - (sheet) => sheet.user_status === "completed" + (sheet) => sheet.user_status === "completed", ); setNotStartedSheets(notStarted); @@ -100,7 +100,7 @@ export const Home = () => {
- + { - const user = useAuthStore((state) => state.user); + // const user = useAuthStore((state) => state.user); return ( -
-
-
-

Lessons

-
-

Email: {user?.email}

-

Role: {user?.role}

-

Status: {user?.status}

-

- Member since:{" "} - {user?.joined_at - ? new Date(user.joined_at).toLocaleDateString() - : "N/A"} -

-
-
-
-
+
+
+

Lessons

+

+ Browse step-by-step lessons from expert Edbridge tutors and pick up + tips to tackle similar questions with confidence. +

+
+
+ + + + Reading & Writing + + + Math + + + + + + Video Thumbnail + + + Video Title + Video Description + + + + + + + Video Thumbnail + + + Video Title + Video Description + + + + +
+
); };