Commit Graph

238 Commits

Author SHA1 Message Date
99f8407e2a feat(ai-bot): add empty state UI and improve message handling 2025-03-25 10:29:25 +08:00
d560904779 feat(api/chat): add OpenAI-based chat route with sarcastic AI personality 2025-03-25 10:03:04 +08:00
7d73118759 feat(ai-bot): enhance AI chat with code integration and optimizations 2025-03-25 00:27:56 +08:00
cbe8ff9941 feat(ai-bot): integrate problem data into AI bot page initialization 2025-03-24 21:24:20 +08:00
8d8b6666b4 feat(playground): add AI chat interface for bot 2025-03-24 19:58:48 +08:00
c7e2b59ddf feat(playground): add AI bot layout with suspense fallback 2025-03-24 19:57:07 +08:00
6f26be6119 feat(playground): add AI layout with bot tab 2025-03-24 19:56:06 +08:00
da92cd49bc feat(playground): add AI panel to problem layout 2025-03-24 19:55:17 +08:00
599d44b341 refactor(globals): migrate global styles to components and adjust layout 2025-03-24 13:57:26 +08:00
cc3fb8afc4 feat(playground): add generateStaticParams for problem static generation 2025-03-24 11:28:40 +08:00
45cbbc2978 refactor(PlaygroundLayout): separate templates from problemData 2025-03-24 10:39:56 +08:00
d0118eca65 refactor(playground): migrate problem description to client component 2025-03-24 10:33:14 +08:00
288a3cc4c5 feat(playground): include full problem data in provider 2025-03-24 10:32:20 +08:00
c97613ac1d refactor(problem-editor): rename CodeEditor to ProblemEditor 2025-03-23 23:55:11 +08:00
c5cf52168b refactor(problemset): remove force-dynamic export 2025-03-23 14:16:57 +08:00
985da4f804 feat(auth): modify signIn logic to prevent redirect after credentials sign-in 2025-03-22 13:18:06 +08:00
107f5d6670 feat(problemset): display sequential index instead of database id 2025-03-22 12:30:04 +08:00
e5ba5dd51a refactor(hooks): rename use-problem-editor.ts to use-problem.ts 2025-03-22 00:23:27 +08:00
f43ba10a57 refactor(store): rename src/store to src/stores 2025-03-21 23:58:40 +08:00
321a712bf9 feat(playground-layout): integrate problem data fetching and editor configuration 2025-03-20 16:12:23 +08:00
d79b88e0b6 refactor(page): simplify WorkspaceEditorPage by removing unnecessary database queries and state management 2025-03-20 16:10:11 +08:00
ceee810e14 refactor(page): update import paths for WorkspaceEditorHeader and WorkspaceEditorFooter 2025-03-20 15:58:05 +08:00
783b8415ea refactor(editor): integrate ProblemEditorProvider for workspace editor 2025-03-20 14:44:17 +08:00
8ab8892388 fix(auth): improve credential validation and password verification 2025-03-19 08:34:15 +08:00
919016cf27 fix(auth): update error message for sign-in and sign-up functions 2025-03-18 23:24:36 +08:00
bef8dcee44 feat(auth): enhance signIn and signUp with error handling and form value types 2025-03-18 22:50:06 +08:00
c9c07664cf feat(layout): update Toaster position to top-right 2025-03-18 22:49:06 +08:00
63c0656f25 feat(auth): assign ADMIN role to the first user on sign up 2025-03-18 21:53:59 +08:00
b55ed07004 fix(Loading): update loading state rendering with skeletons for better UX 2025-03-18 19:49:03 +08:00
6c53c5ee32 refactor(page): replace accordion structure with LanguageServerAccordion component 2025-03-18 19:37:30 +08:00
bd085751b6 feat(component): add LanguageServerAccordion for language server settings 2025-03-18 19:36:36 +08:00
7eb6eedf22 feat(settings): add Suspense with Loading fallback in language server layout 2025-03-18 19:33:14 +08:00
ceb01aec59 feat(dashboard): add admin dashboard page 2025-03-18 14:58:19 +08:00
827fb26966 feat(language-server): add settings page for language server configuration 2025-03-18 14:45:45 +08:00
06c711bdaf feat(form): add language-server form for settings 2025-03-18 14:43:48 +08:00
494b899f09 feat(actions): add language server configuration handling 2025-03-18 14:33:51 +08:00
6ec039eeb5 feat(admin): add language server settings layout 2025-03-18 11:01:35 +08:00
168df31fad refactor(admin): replace breadcrumb with Navbar in dashboard layout 2025-03-18 10:40:03 +08:00
f266d9cdf7 feat(dashboard): remove guest prop and return notFound for non-ADMIN users 2025-03-17 12:06:48 +08:00
b403a0f977 refactor(components): extract NavUserProps and NavMainProps type and optimize type definitions 2025-03-17 11:35:05 +08:00
cb966297e1 refactor(app-sidebar): support external user prop and remove internal user data 2025-03-17 10:45:23 +08:00
36c6dd138f feat(dashboard): add layout component for dashboard 2025-03-17 10:07:00 +08:00
a5faab67c5 feat(components/ui): add Sidebar-07 component from shadcn/ui 2025-03-16 20:31:21 +08:00
af0ece8952 feat(judge): integrate Prisma for editor language configurations 2025-03-16 19:32:34 +08:00
332e019e70 feat(workspace/editor): add language server config support and optimize data fetching logic 2025-03-16 16:24:58 +08:00
ee4020f50f feat(workspace): pass editorLanguageConfigs to LanguageSelector and WorkspaceEditorHeader 2025-03-16 14:18:14 +08:00
d1188f5ea6 chore(components): move features to components/features 2025-03-16 12:05:59 +08:00
672b627ed1 chore(app): remove playground folder 2025-03-15 22:34:23 +08:00
3e4c58d953 refactor(AuthLayout): replace <a> with <Link> for better navigation 2025-03-15 00:11:51 +08:00
740bc1e00b feat(problemset): optimize database query by selecting specific fields 2025-03-14 18:59:44 +08:00
cd50e73fc9 refactor(auth): extract saltRounds constant 2025-03-14 17:15:38 +08:00
468e72e9a8 feat(auth): add sign up and sign in functions with credentials 2025-03-14 17:06:19 +08:00
5f49d6841e feat(layout): add Sonner Toaster for toast notifications 2025-03-14 15:36:29 +08:00
bfaaf25732 feat(auth): add layout for authentication pages with redirect logic 2025-03-14 14:38:51 +08:00
2d872da445 feat(auth): add sign-in and sign-up pages 2025-03-14 14:37:32 +08:00
2f037f8a78 feat(layout): add Suspense with fallback loading for problemset layout 2025-03-13 11:24:24 +08:00
574a98e58e chore(auth): move auth.ts to src/lib directory 2025-03-12 22:46:01 +08:00
e6b4be4758 feat(problemset-layout): add AvatarButton to problemset layout 2025-03-12 21:17:14 +08:00
2679f52066 feat(RootLayout): add SettingsDialog component 2025-03-12 17:38:33 +08:00
012e0f7d05 fix(problem): remove unnecessary parseInt conversion for problem id 2025-03-12 15:32:14 +08:00
18ab071ca6 feat(auth): create route.ts for NextAuth API handler 2025-03-12 15:02:02 +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
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
84ac0a88dc feat(solution): add layout and page components for problem solution, including footer 2025-03-10 20:54:31 +08:00
4727c55bcc refactor(layout, page, description): update problem page layout and structure, including description fetching and TabsContent styling 2025-03-10 20:51:21 +08:00
8c847018f0 fix(theme): update code block styles to use useTheme hook value 2025-03-09 20:30:02 +08:00
0868f45a10 chore(playground): comment out the import and usage of ProblemDescriptionFooter 2025-03-09 18:59:55 +08:00
849c8bc609 feat(page): deprecate /playground and redirect to /problemset 2025-03-09 18:21:27 +08:00
0dbed9c284 feat(terminal): add TerminalTestcasePage with release info card 2025-03-09 18:17:18 +08:00
f3303fff3d feat(layout): add TerminalTestcaseLayout component for rendering testcase content 2025-03-09 18:16:28 +08:00
f4078cb985 feat(layout): add terminal layout with Tabs and ScrollArea for testcase display 2025-03-09 18:15:48 +08:00
dd2f4a733b feat(scroll-area): add horizontal scrollbar to problem description page 2025-03-09 15:04:54 +08:00
163dc4b57c feat(problem-description): add dynamic title to footer and fetch problem title 2025-03-09 14:49:59 +08:00
ef753dd6c8 style(problems, workspace): adjust ScrollArea height and flex layout 2025-03-09 14:46:43 +08:00
3a75c3d415 style(layout): update panel border-radius to rounded-xl 2025-03-09 14:31:26 +08:00
e224fae210 feat(layout): adjust resizable panel layout with equal distribution for workspace and terminal 2025-03-09 13:26:05 +08:00
f6fc01ae6a feat(workspace): fetch problem templates and pass to editor header 2025-03-09 11:06:10 +08:00
63bde8cafb feat(editor): fetch problem templates from database 2025-03-09 10:49:34 +08:00
2ffb366c7c feat(workspace): add editor layout with header and editor page 2025-03-08 21:33:13 +08:00
a14087b395 feat(workspace): add editor layout with footer for problem page 2025-03-08 21:28:11 +08:00
6b34110aad feat(workspace): add workspace layout component with tabs and editor 2025-03-08 21:19:27 +08:00
a78431fb61 fix(playground): update file path 2025-03-08 21:17:31 +08:00
a7799af2f4 refactor(layout): rename WorkspaceLayout to PlaygroundLayout and modify props 2025-03-08 21:11:18 +08:00
4f6a37df17 fix(prisma): update enum values for EditorLanguage to lowercase ('c' and 'cpp') 2025-03-08 21:03:32 +08:00
944c5407bd fix(problem): change content to description for problem page rendering 2025-03-08 20:06:08 +08:00
bddbc03f3a chore(playground): update import path for ProblemDescriptionFooter 2025-03-08 19:52:39 +08:00
d697993e87 refactor(playground): replace Header with WorkspaceHeader 2025-03-08 19:50:21 +08:00
9ff39a0438 feat(problems): add problem description page with MDX rendering 2025-03-08 19:46:01 +08:00
c6ab92e1e7 feat(problems): add footer to problem description layout 2025-03-08 19:44:45 +08:00
e0adfa3075 refactor(workspace): move ProblemDescriptionFooter to features 2025-03-08 19:41:03 +08:00
f6f640927d style(layout): adjust layout to use flexbox in ProblemLayout component 2025-03-08 18:57:51 +08:00
a851223d9f feat(problem): add problem layout with tabs for description, solution, and submission 2025-03-08 18:31:54 +08:00
0644a9f71f feat(workspace): add WorkspaceLayout with resizable panels 2025-03-08 18:00:13 +08:00
0a8e2d49b4 fix(redirect): update redirect path to /problemset 2025-03-07 16:38:51 +08:00
9f619d71d1 fix(layout): remove layout.tsx 2025-03-07 16:38:44 +08:00
ba16523c03 feat(problemset): add difficulty color mapping based on problem difficulty 2025-03-07 16:34:51 +08:00
9a04d83f9e feat(problemset): add clickable links for problem IDs and titles 2025-03-07 16:26:00 +08:00
134046ff5a feat(problemset): add page to display published problems in a table 2025-03-07 15:52:11 +08:00