4da3723195
feat(types): add getAllProblemsWithTestcases and ProblemWithTestcases
2025-04-11 15:58:37 +08:00
d64f95b4e7
refactor(judge): rewrite judge service to use database submissions
...
- Change return type from JudgeResult to Submission
- Add database operations to persist submission records
- Improve error handling and container cleanup
- Update compile and run functions to work with submissions
- Add proper status updates throughout the process
2025-04-11 09:52:56 +08:00
dc939085bb
refactor(hooks): move show-status-toast.tsx from lib to hooks
2025-04-11 09:47:31 +08:00
6e22822383
chore(toast): rename show-exit-code-toast.tsx to show-status-toast.tsx
2025-04-10 22:42:41 +08:00
895c3f779d
refactor(judge): fetch timeLimit and memoryLimit from Problem instead of DockerConfig
2025-04-10 21:59:11 +08:00
84ebd17be9
style(playground): adjust header layout and z-index for centered RunCode button
2025-04-10 20:38:39 +08:00
10c1716019
style(bot): simplify layout and optimize className order
2025-04-10 10:44:39 +08:00
2f2c8ab112
refactor(problems): improve testcase scroll layout using ScrollArea
2025-04-10 10:41:36 +08:00
3f10c08a6c
feat(testcase): add dynamic testcase card and form for problem view
2025-04-09 21:26:06 +08:00
f1f2a70c0e
refactor(problem-store): consolidate problem data structure into ProblemWithDetails
2025-04-09 20:38:53 +08:00
5698a6b81f
feat(types): add problem and testcase details types with prisma include
2025-04-09 20:24:57 +08:00
a02335b255
feat(problem-store): add testcases to store state and provider
2025-04-09 19:41:55 +08:00
e6614a0aa2
feat(types/prisma): implement getTestcaseWithData with TestcaseWithData type
2025-04-09 19:37:47 +08:00
0f71444f9f
style(dockview): adjust border radius and tab spacing in abyss-spaced
2025-04-09 15:06:22 +08:00
cb940f8608
refactor(problemset): simplify layout by removing Suspense wrapper
2025-04-08 19:15:06 +08:00
d799578150
refactor(editor/header): adjust workspace header layout structure
2025-04-07 12:32:15 +08:00
a7419fe1ba
fix(editor/footer): delay the import of Monaco's MarkerSeverity until window is defined
2025-04-07 12:05:17 +08:00
3e5e2d2a62
feat(dockview): support dynamic Lucide icons via string in tab headers
2025-04-07 10:32:58 +08:00
9a51c1547f
feat(problems): add inactive state to dockview panels
2025-04-06 20:38:51 +08:00
01b19eadde
feat(problem): enhance panels with icons using Lucide-react
2025-04-06 18:17:58 +08:00
da26648a9b
feat(dockview): refactor component API and add customization options
2025-04-06 18:16:43 +08:00
67e1445f98
refactor(problemset): use Dockview components with dynamic params in description form
2025-04-06 17:40:29 +08:00
4c120388ab
feat(problem): add ProblemPage with DockView layout
2025-04-06 17:34:07 +08:00
9598430c9a
refactor(layout): use children prop instead of individual panel components
2025-04-06 15:58:12 +08:00
8d7d88511e
refactor(app/problems/[id]): restructure components into features directory with index exports
2025-04-06 15:46:43 +08:00
787f91b743
style(problemset): increase odd row background opacity in tables
2025-04-05 23:34:48 +08:00
424f24694b
feat(problemset): add metadata, description, and solution forms for new problem creation
2025-04-05 23:17:36 +08:00
ba676b3213
feat(problem): add Bot panel and adapt to new dockview API
2025-04-05 18:03:36 +08:00
b8576dbf10
feat(dockview): refactor to generic configurable dockview component
2025-04-05 17:50:07 +08:00
6c34fa0171
refactor(problems): restructure bot parallel routing
2025-04-05 16:21:35 +08:00
0d074a556d
feat(store): add hydration logic and state management to new problem store
2025-04-04 21:13:12 +08:00
54ac7b3cd5
feat(editor): add Markdown editor component with Monaco editor integration
2025-04-04 20:24:11 +08:00
11ecdcc535
feat(shiki): add support for markdown highlighting
2025-04-04 19:43:33 +08:00
a8e243204b
feat(layout): refactor problem layout to use DockView for organizing content sections
2025-04-04 18:13:14 +08:00
2f1a9767f1
feat(dockview): add Dockview component and panel layout management
2025-04-04 14:03:05 +08:00
ba11f1d5ba
style(layout): update html and body class names for full-height layout
2025-04-04 13:36:34 +08:00
d61f3d9b0c
refactor(styles): rename style folder to styles
2025-04-04 13:00:36 +08:00
30fd6fd386
refactor(actions): move actions from @/app/actions to @/actions
2025-04-04 10:04:38 +08:00
901e2aa487
feat(admin/problemset): add new problem creation pages
2025-04-02 09:29:18 +08:00
623e4929ac
feat(admin/problemset): add Zustand store for new problem state
2025-04-02 09:28:09 +08:00
74e85edd33
feat(admin/problemset): add schema definition for new problem
2025-04-02 09:27:05 +08:00
1875e98106
feat(problemset/table): wrap Add Problem
button with Next.js Link
2025-04-02 08:38:51 +08:00
548f0b7184
feat(components/ui): add Switch component from shadcn/ui
2025-04-01 17:33:09 +08:00
750fb74653
chore(imports): update imports to use @/generated/client instead of @prisma/client
2025-04-01 11:46:25 +08:00
f16363ae72
feat(auth): enable GitHub dangerous email account linking
2025-04-01 00:12:58 +08:00
aa9d6d5586
feat(judge): add stdin support with test cases and default timeLimit
2025-03-31 22:07:02 +08:00
7f3ac2e0ec
style(problemset): refine table row styles for better UI consistency
2025-03-31 22:02:49 +08:00
653402614a
feat(admin/problemset): add problem list table with Prisma query
2025-03-31 21:39:18 +08:00
ce41afa383
feat(admin/problemset): add interactive problemset data table
...
- Implement responsive data table with TanStack React Table
- Add dynamic filtering for difficulty and search
- Support server-side pagination controls
- Include row selection and batch delete functionality
- Add column visibility toggling
- Style table with custom hover states and accessibility features
2025-03-31 21:28:28 +08:00
139c0ba76d
feat(components/ui): add Table component from shadcn/ui
2025-03-30 21:08:03 +08:00
6ab3e16598
refactor(utils): move getDifficultyColor function
2025-03-30 21:04:23 +08:00
daa7775862
chore(sidebar): simplify navigation structure
2025-03-30 20:51:38 +08:00
99f6696fa2
feat(nav-main): refactor sidebar menu to handle items without submenus
2025-03-30 20:43:12 +08:00
25920fcb68
feat(utils): add difficulty color utility and update type imports
2025-03-30 20:30:58 +08:00
192d882fdd
fix(banner): update component to use 'flex-none' for flexbox layout
2025-03-30 20:21:59 +08:00
452174a946
chore(editor): update Monaco Editor configuration for improved UX
2025-03-28 15:45:15 +08:00
d859796755
refactor(theme): update Monaco theme configuration to use default light and dark themes
2025-03-28 13:08:14 +08:00
33e19d3318
fix(form): show error message when input is empty before submitting form
2025-03-28 10:42:59 +08:00
e490f1bcea
fix(video-embed): refactor URL generation and prevent Bilibili autoplay
2025-03-28 10:38:46 +08:00
95eed59c26
feat(ai-bot): add Ctrl+Enter support and tooltip for message submission
2025-03-27 15:17:36 +08:00
869957de19
feat(mdx-components): add VideoEmbed component to MDX components map
2025-03-27 14:06:04 +08:00
535d8ec51a
feat(mdx/content): add component for embedding YouTube and Bilibili videos
2025-03-27 14:05:16 +08:00
a86a42a483
feat(mdx-components): add AccordionComponent to MdxComponents
2025-03-27 13:33:36 +08:00
671f29b66a
feat(mdx/content): add AccordionComponent for collapsible sections with lightbulb icon
2025-03-27 13:33:01 +08:00
fbe0ef63d8
refactor(playground): simplify chat layout and unify scroll area styles
2025-03-26 22:57:16 +08:00
4ec1943738
fix(chat-bubble): adjust message padding and layout styles
2025-03-26 22:51:03 +08:00
2605b211bc
feat(pre): add horizontal scrolling support for code blocks
2025-03-26 22:48:46 +08:00
793db58e36
feat(mdx): add scroll support for tables
2025-03-26 22:48:00 +08:00
9e634853e8
fix(styles): remove default margin from markdown figures
2025-03-26 19:50:40 +08:00
b6f16becda
feat(docker): support remote Docker client configuration
2025-03-26 14:49:27 +08:00
b9c843e33e
chore(metadata): rename project to Judge4c and update description
2025-03-25 22:01:12 +08:00
d31edbaf08
refactor(playground): remove generateStaticParams function
2025-03-25 21:02:09 +08:00
1de4396eaa
feat(workspace-editor-footer): add error and warning marker count
2025-03-25 13:18:41 +08:00
4736f77cbf
fix(problem-editor): add editor validation handling
2025-03-25 13:08:29 +08:00
a55ef88745
feat(hook): add markers state and setter to useProblem hook
2025-03-25 13:05:22 +08:00
a7d0bc54bc
feat(provider): initialize markers in problem store provider
2025-03-25 13:03:40 +08:00
2c013097a8
feat(problem-store): add markers to problem store state and actions
2025-03-25 13:01:34 +08:00
315a33bd95
fix(ai-bot): correct bot name from "Asi" to "Ask"
2025-03-25 12:22:17 +08:00
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
ef37451313
chore(ui): add eslint-disable for unused variables in ChatMessageList
2025-03-24 21:27:12 +08:00
c0783f0648
chore(ui): add eslint-disable for empty object type in ChatInputProps
2025-03-24 21:26:47 +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
378d568694
fix(toast): update ExitCodeToast styling and layout
2025-03-24 13:08:21 +08:00
2b4a4b527e
feat(cli): add all components with shadcn-chat-cli
2025-03-24 11:38:00 +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
0c9ad2b8b0
refactor(mdx-preview): use MdxComponents and add className prop
2025-03-24 10:31:09 +08:00
7a0a13aa97
feat(hook): add problem field to useProblem hook
2025-03-24 10:29:46 +08:00
dcb666c12d
feat(problem-store-provider): pass problem data to ProblemStoreProvider
2025-03-24 10:28:58 +08:00
2a90162c73
feat(problem-store): add problem field to ProblemState
2025-03-24 10:28:16 +08:00
c97613ac1d
refactor(problem-editor): rename CodeEditor to ProblemEditor
2025-03-23 23:55:11 +08:00