Commit Graph

424 Commits

Author SHA1 Message Date
5f49d6841e feat(layout): add Sonner Toaster for toast notifications 2025-03-14 15:36:29 +08:00
18d9b28e1e feat(components/ui): add Sonner component from shadcn/ui 2025-03-14 15:33:07 +08:00
b94daca2cf chore(env): merge .env.local.example into .env.example 2025-03-14 15:29:58 +08:00
907d108714 feat(auth): implement custom credentials provider with session management 2025-03-14 14:39:26 +08:00
bfaaf25732 feat(auth): add layout for authentication pages with redirect logic 2025-03-14 14:38:51 +08:00
cb5c97a57f chore(public): add placeholder SVG image 2025-03-14 14:38:11 +08:00
2d872da445 feat(auth): add sign-in and sign-up pages 2025-03-14 14:37:32 +08:00
095af823e4 feat(auth): add sign-in and sign-up forms with GitHub sign-in option 2025-03-14 14:36:35 +08:00
eadd276c29 feat(auth): add GitHubSignIn component 2025-03-14 14:35:07 +08:00
47c219bc4a refactor(avatar-button): replace sign-in handler with redirect to /sign-in 2025-03-14 14:34:05 +08:00
e6e5ea98ea feat(auth): add validation schema using Zod 2025-03-14 14:22:58 +08:00
3cff6624c8 chore(deps): add uuid package 2025-03-14 14:18:09 +08:00
17dd98c78c refactor(utils): remove type annotation from getPath function 2025-03-14 11:04:12 +08:00
f9ed3b4e39 chore(deps): add @types/bcrypt package 2025-03-14 11:03:06 +08:00
e2dce21261 feat(components/ui): add Label component from shadcn/ui 2025-03-14 10:11:22 +08:00
015f46f873 chore(deps): add bcrypt and zod packages 2025-03-14 09:56:51 +08:00
dbc1e8b814 chore(prisma): run migration for credentials-based auth changes 2025-03-14 00:18:56 +08:00
eac20c8882 feat(prisma): allow nullable email/name and add password field in User model 2025-03-14 00:17:29 +08:00
60aef705d5 refactor(editor): replace loading skeleton with custom Loading component 2025-03-13 11:44:14 +08:00
2f037f8a78 feat(layout): add Suspense with fallback loading for problemset layout 2025-03-13 11:24:24 +08:00
b78547a992 feat(run-code): add tooltip to button for better UX 2025-03-13 10:48:01 +08:00
574a98e58e chore(auth): move auth.ts to src/lib directory 2025-03-12 22:46:01 +08:00
c6cba8f504 feat(playground-header): replace SettingsButton with AvatarButton 2025-03-12 21:17:50 +08:00
e6b4be4758 feat(problemset-layout): add AvatarButton to problemset layout 2025-03-12 21:17:14 +08:00
171ee8abdc refactor(settings-button): update to use dropdown menu item instead of button 2025-03-12 21:15:44 +08:00
d0235b0989 feat(avatar-button): add AvatarButton component with login/logout functionality 2025-03-12 21:14:18 +08:00
2679f52066 feat(RootLayout): add SettingsDialog component 2025-03-12 17:38:33 +08:00
118b96a7a8 fix(auth): change prisma import to default export 2025-03-12 15:55:42 +08:00
012e0f7d05 fix(problem): remove unnecessary parseInt conversion for problem id 2025-03-12 15:32:14 +08:00
24d94f3802 feat(prisma): add global Prisma client instance 2025-03-12 15:25:31 +08:00
bc7b7e3b8a feat(components/ui): add Avatar component from shadcn/ui 2025-03-12 15:19:41 +08:00
89d9dbd01e feat(auth): add GitHub provider for authentication 2025-03-12 15:18:31 +08:00
6a0937390c chore(prisma): generate migration for authentication schema changes 2025-03-12 15:11:05 +08:00
a3900d7c9c feat(prisma): refactor schema to support authentication and relational data 2025-03-12 15:09:01 +08:00
256a8614e3 feat(auth): integrate PrismaAdapter with NextAuth for database integration 2025-03-12 15:07:20 +08:00
d3d280e618 refactor(prisma): replace global with globalThis for cross-platform compatibility 2025-03-12 15:06:08 +08:00
22b2824dc0 chore(deps): add @auth/prisma-adapter and update @prisma/client, prisma versions 2025-03-12 15:04:29 +08:00
18ab071ca6 feat(auth): create route.ts for NextAuth API handler 2025-03-12 15:02:02 +08:00
134cd38964 feat(auth): create auth.ts for authentication setup 2025-03-12 15:01:26 +08:00
78d04a34f2 chore(example): add AUTH_SECRET to .env.local.example 2025-03-12 15:00:03 +08:00
75c884e8cc chore(deps): add next-auth@beta package 2025-03-12 14:59:11 +08:00
eab62706e0 feat(problemset): add dynamic rendering for ProblemsetPage 2025-03-12 13:57:57 +08:00
c58ed38c03 feat(problemset): add sorting by id in problemset page 2025-03-12 12:52:50 +08:00
6d61e6e783 refactor(header): remove state management and add back button 2025-03-12 12:24:53 +08:00
97405a8657 feat(components): add back button component with tooltip 2025-03-12 12:22:41 +08:00
247e54c40c refactor(settings-dialog): integrate settings dialog state with store 2025-03-12 11:49:29 +08:00
83356993e9 refactor(settings-button): integrate settings dialog state with store 2025-03-12 11:48:41 +08:00
efa16c8b77 refactor(store): rename useSettingNavStore to useSettingsStore and update state structure 2025-03-12 11:47:31 +08:00
a7a50231d2 refactor(problems): use Suspense for lazy loading and adjust layout structure 2025-03-12 08:59:38 +08:00
ca2d663533 feat(playground): add min size constraints for resizable panels 2025-03-12 08:23:24 +08:00