cfngc4594
1d0b74136f
refactor(i18n): replace hardcoded texts with i18n message keys for auth
2025-04-16 00:40:36 +08:00
cfngc4594
0b3086f333
chore(seed): add seed data for problem templates
2025-04-15 23:07:47 +08:00
cfngc4594
4428a29306
refactor(i18n): replace hardcoded texts with i18n message keys
2025-04-15 18:22:21 +08:00
cfngc4594
8b276ae91e
chore(docker): add compose.cn.yml file
2025-04-15 13:27:08 +08:00
cfngc4594
a2bf1fc7a1
chore(deps): add react-world-flags package
2025-04-15 01:03:35 +08:00
cfngc4594
d98522d643
feat(i18n): add locale management and configuration
2025-04-14 23:15:41 +08:00
cfngc4594
30922a25bb
feat(i18n): integrate next-intl and dynamic locale support in RootLayout
2025-04-14 22:43:27 +08:00
cfngc4594
8673e4615a
feat(i18n): integrate next-intl plugin for internationalization
2025-04-14 21:49:16 +08:00
cfngc4594
e7e8b5da8b
chore(deps): add next-intl package
2025-04-14 21:46:03 +08:00
cfngc4594
5465450143
feat(auth): update sign-in and sign-up flow with redirect support
2025-04-14 21:27:06 +08:00
cfngc4594
799ab3ccd1
refactor(avatar-button): remove unnecessary account and notification items from dropdown menu
2025-04-14 17:59:52 +08:00
cfngc4594
c540a04c36
feat(problemset): add status icons for problem set page, support completed and attempted states
2025-04-14 17:35:31 +08:00
cfngc4594
0694e4dea0
feat(problemset): add completion status indicator for problems
2025-04-14 17:22:01 +08:00
cfngc4594
59e133f29c
feat(submissions-table): update table to display detailed status message
2025-04-14 16:53:58 +08:00
cfngc4594
69d03f89da
refactor(problem): remove TestResult tab and adjust tab positions
2025-04-14 16:25:10 +08:00
cfngc4594
d58723bd47
delete(features): remove src/app/(app)/problems/[id]/features folder
2025-04-14 16:22:10 +08:00
cfngc4594
207697c592
feat(submission-details): display last failed test case details and error messages
2025-04-14 15:38:02 +08:00
cfngc4594
b18dedcc23
feat(judge): create testcaseResult for TLE and update relation field
2025-04-14 15:33:18 +08:00
cfngc4594
675c828fe2
feat(submissions): include detailed testcase data in problem submissions query
2025-04-14 15:30:59 +08:00
cfngc4594
f53807338a
refactor(submission-table): switch to SubmissionWithTestcaseResult to support testcase results
2025-04-14 14:15:16 +08:00
cfngc4594
44ec30e988
refactor(store): replace Submission with SubmissionWithTestcaseResult in dockview store
2025-04-14 14:12:15 +08:00
cfngc4594
1ad8dbab47
feat(types/prisma): add submission and testcase result query types
2025-04-14 14:11:29 +08:00
cfngc4594
81f89f7b16
refactor(schema): rename TestcaseResult fields to camelCase
2025-04-14 11:33:19 +08:00
cfngc4594
fbf563dfdf
refactor(details): move panel cleanup logic into useEffect
2025-04-14 10:40:08 +08:00
cfngc4594
ce4a0e64c9
feat(store): persist submission state in dockview store
2025-04-14 10:39:06 +08:00
cfngc4594
9b82088110
feat(judge): add language-specific compilation commands for C and C++
2025-04-14 10:28:39 +08:00
cfngc4594
2a4d741a76
feat(submissions): show language label alongside icon in submissions table
2025-04-14 10:26:57 +08:00
cfngc4594
01c2cd6eef
refactor(description-form): simplify form to use basic input instead of markdown editor
2025-04-13 22:45:33 +08:00
cfngc4594
c82b75b300
feat(dockview-store): add submission state management
2025-04-13 22:44:05 +08:00
cfngc4594
b35ef0208a
feat(submissions-table): add click handler to open details panel
2025-04-13 22:43:01 +08:00
cfngc4594
2d06b778e6
feat(problems): add Details panel for submission details view
...
- Add new Details component to display submission details
- Modify ProblemLayout and ProblemPage to support Details panel
- Implement Details page with submission code view and metadata
- Add navigation back to Submissions panel
2025-04-13 22:42:08 +08:00
cfngc4594
db620ceae3
feat(judge): add memory usage tracking for accepted solutions
2025-04-13 17:28:13 +08:00
cfngc4594
03c47f76d2
feat(judge): set executionTime as max testcase runtime on AC
2025-04-13 13:39:36 +08:00
cfngc4594
e7ad3a66e6
style(testcase-form): reorder input props and make inputs read-only
2025-04-13 13:22:47 +08:00
cfngc4594
8b3faf4a42
feat(submissions): improve submission table with icons and better status display
2025-04-13 13:18:10 +08:00
cfngc4594
105802a209
feat(problem): add parallel routes
2025-04-13 12:06:08 +08:00
cfngc4594
a559c326a8
feat(problem): refactor layout and page components
...
- Refactored `ProblemLayout` to pass panel components (Description, Solutions, etc.) as props.
- Updated `ProblemPage` to dynamically render dock panels with content from props, instead of static components.
- Removed `DefaultDockviewOptions` and integrated custom panel configuration directly in `ProblemPage`.
- Enhanced `DockView` to support dynamic panel content rendering based on passed props.
2025-04-13 11:56:01 +08:00
cfngc4594
a897e00a72
chore(dockview): remove unused Dockview configuration file
...
- Deleted `src/config/dockview.ts` as it was no longer needed with the refactor to support dynamic panel options.
2025-04-13 11:54:07 +08:00
cfngc4594
54998d5c1b
feat(dockview): update DockView component to support external onApiReady callback
...
- Removed the internal use of `useDockviewStore` for managing Dockview API state.
- Introduced `onApiReady` prop to allow external handling of the `DockviewApi` when it’s ready.
- Updated `onReady` function to invoke `onApiReady` callback with the API instance.
- Ensured backward compatibility by keeping the previous internal handling of `DockviewApi`.
2025-04-13 11:53:06 +08:00
cfngc4594
0de139f29c
refactor(bot-toggle): inline Bot panel config and remove DefaultDockviewOptions dependency
2025-04-13 11:41:58 +08:00
cfngc4594
56782b83fc
refactor(components): migrate DockView to dynamic panel/tab components with store-based API exposure and autoAdd flag
2025-04-13 11:35:29 +08:00
cfngc4594
737965dc91
style(submissions-table): replace odd row styling with even row check logic
2025-04-13 11:23:58 +08:00
cfngc4594
7d7e503c8e
feat(judge): add revalidation for problem page after submission
2025-04-13 11:16:26 +08:00
cfngc4594
fd50e72518
fix(prisma): rename Submission relations to submissions for consistency
2025-04-13 11:13:18 +08:00
cfngc4594
8809dbdb1a
feat(run-code): activate Submissions panel after running code
2025-04-12 13:38:57 +08:00
cfngc4594
d9d9db16fe
refactor(bot): simplify layout and improve UI rendering in Bot component
2025-04-12 13:17:48 +08:00
cfngc4594
72a868402c
feat(header): add BotVisibilityToggle to header component
2025-04-12 10:55:41 +08:00
cfngc4594
f78196d7e0
feat(components): add bot visibility toggle component
...
- Added a toggle to control the visibility of the bot panel
- Implemented loading state with Skeleton component
- Integrated with dockview store to manage panel visibility
- Added tooltip to indicate bot's current state (Open/Close)
2025-04-12 10:53:32 +08:00
cfngc4594
3b1c2fc41b
refactor(problem): replace inline dockview options with default config
2025-04-12 10:47:23 +08:00
cfngc4594
69e06ecfc6
feat(dockview): add Zustand store for dockview API management
2025-04-12 10:41:52 +08:00
cfngc4594
faf7f45425
feat(dockview): add configuration for panel layout
2025-04-12 10:40:59 +08:00
cfngc4594
7963d38388
feat(submissions): add submissions table component and display on problem page
...
- Added `SubmissionsTable` component to display submissions (including status, language, time, memory, and submission date).
- Updated `Submissions` page to render `SubmissionsTable` with submissions data from `ProblemStore`.
- Improved table sorting and date display logic.
2025-04-11 17:44:45 +08:00
cfngc4594
bb644113f4
chore(deps): add date-fns package
2025-04-11 17:43:17 +08:00
cfngc4594
82b0705bdb
feat(problem-store): add submissions to problem store state and provider
...
- Added `submissions` field to `ProblemState` and `ProblemStore` type
- Updated `createProblemStore` function to handle `submissions`
- Modified `ProblemStoreProvider` to pass `submissions` as a prop
- Updated `ProblemLayout` to fetch `submissions` from the database and pass to the provider
2025-04-11 17:42:52 +08:00
cfngc4594
ad43eb9b0a
refactor(status): extract status logic into separate module
...
- Moved color class and status map logic to `src/lib/status.ts`
- Simplified `showStatusToast` and `StatusToast` components
- Replaced `getColorClass` with `getStatusColorClass` from the new module
2025-04-11 17:41:04 +08:00
cfngc4594
31441aed89
chore(tailwind): include lib directory in content paths
2025-04-11 17:27:42 +08:00
cfngc4594
a81be5c0f9
feat(judge): implement full testcase support and result recording
...
- Add testcase handling with proper input/output validation
- Modify run function to process multiple testcases sequentially
- Implement testcase result recording in database
- Improve error handling and status updates
- Add related type definitions for testcases
2025-04-11 16:01:44 +08:00
cfngc4594
4da3723195
feat(types): add getAllProblemsWithTestcases and ProblemWithTestcases
2025-04-11 15:58:37 +08:00
cfngc4594
24f78ab811
chore(prisma): add seed data for testcase_result model
2025-04-11 15:57:24 +08:00
cfngc4594
2de1674b22
feat(prisma): add testcase_result model and related relations
2025-04-11 15:56:24 +08:00
cfngc4594
1c0612372b
feat(prisma): add TestcaseResult model and relations to Submission and Testcase
2025-04-11 15:53:56 +08:00
cfngc4594
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
cfngc4594
dc939085bb
refactor(hooks): move show-status-toast.tsx from lib to hooks
2025-04-11 09:47:31 +08:00
cfngc4594
93b5a68426
chore(config): update Tailwind content paths to include hooks and remove pages
2025-04-11 09:46:11 +08:00
cfngc4594
6e22822383
chore(toast): rename show-exit-code-toast.tsx to show-status-toast.tsx
2025-04-10 22:42:41 +08:00
cfngc4594
5e3b75a36b
feat(prisma): add submission table and related relations
2025-04-10 22:26:45 +08:00
cfngc4594
7dbf06b99f
feat(prisma): add user and problem relations to Submission model
2025-04-10 22:24:40 +08:00
cfngc4594
895c3f779d
refactor(judge): fetch timeLimit and memoryLimit from Problem instead of DockerConfig
2025-04-10 21:59:11 +08:00
cfngc4594
82428bbd09
chore(seed): remove timeLimit and memoryLimit from DockerConfig data
2025-04-10 21:57:11 +08:00
cfngc4594
17c6be8a65
feat(prisma): migrate timeLimit and memoryLimit to Problem model
2025-04-10 21:55:32 +08:00
cfngc4594
feee3a2580
feat(prisma): move timeLimit and memoryLimit from DockerConfig to Problem model
2025-04-10 21:54:30 +08:00
cfngc4594
84ebd17be9
style(playground): adjust header layout and z-index for centered RunCode button
2025-04-10 20:38:39 +08:00
cfngc4594
10c1716019
style(bot): simplify layout and optimize className order
2025-04-10 10:44:39 +08:00
cfngc4594
2f2c8ab112
refactor(problems): improve testcase scroll layout using ScrollArea
2025-04-10 10:41:36 +08:00
cfngc4594
c4e9c5b566
feat(seed): add expected output for test data
2025-04-10 10:39:24 +08:00
cfngc4594
e2914d1e18
feat(schema): add expectedOutput field to Testcase model
2025-04-10 10:19:17 +08:00
cfngc4594
11fac9b3d6
feat(prisma): add expectedOutput field to Testcase model
2025-04-10 10:16:05 +08:00
cfngc4594
3f10c08a6c
feat(testcase): add dynamic testcase card and form for problem view
2025-04-09 21:26:06 +08:00
cfngc4594
51b9d7fa72
feat(seed): add testcases for test data
2025-04-09 21:13:26 +08:00
cfngc4594
f1f2a70c0e
refactor(problem-store): consolidate problem data structure into ProblemWithDetails
2025-04-09 20:38:53 +08:00
cfngc4594
5698a6b81f
feat(types): add problem and testcase details types with prisma include
2025-04-09 20:24:57 +08:00
cfngc4594
a02335b255
feat(problem-store): add testcases to store state and provider
2025-04-09 19:41:55 +08:00
cfngc4594
e6614a0aa2
feat(types/prisma): implement getTestcaseWithData with TestcaseWithData type
2025-04-09 19:37:47 +08:00
cfngc4594
1813d4ed79
chore(prisma): migrate to add Testcase and TestcaseData models
2025-04-09 19:31:51 +08:00
cfngc4594
521a185d7c
feat(prisma): add Testcase and TestcaseData models with relation to Problem
2025-04-09 19:28:00 +08:00
cfngc4594
0f71444f9f
style(dockview): adjust border radius and tab spacing in abyss-spaced
2025-04-09 15:06:22 +08:00
cfngc4594
46f2a3512f
chore(deps): bump prisma and @prisma/client to v6.6.0
2025-04-09 11:44:37 +08:00
cfngc4594
c5add2a42c
docs(readme): improve WSL network config and add TLS troubleshooting guide
2025-04-09 11:43:39 +08:00
cfngc4594
cb940f8608
refactor(problemset): simplify layout by removing Suspense wrapper
2025-04-08 19:15:06 +08:00
cfngc4594
41d68a4b15
docs(readme): reorganize deployment sections and add local development details
2025-04-08 18:36:12 +08:00
cfngc4594
c320ff9a00
chore(docker): switch to pre-built docker images from remote registry
2025-04-08 16:07:54 +08:00
cfngc4594
536ae29dd1
chore(docker): rename compose files to local variants
2025-04-08 16:06:22 +08:00
cfngc4594
9dc3ab6c8f
feat(docker): update docker-compose.yml with environment variables and remote Docker configuration
2025-04-08 14:15:43 +08:00
cfngc4594
ca815d5b80
chore(env): update .env.example with PostgreSQL host/port and Docker remote access configuration
2025-04-08 14:04:06 +08:00
cfngc4594
3ecbb99dff
chore(docker): update .dockerignore to exclude additional files and directories
2025-04-08 14:02:24 +08:00
cfngc4594
d799578150
refactor(editor/header): adjust workspace header layout structure
2025-04-07 12:32:15 +08:00
cfngc4594
a7419fe1ba
fix(editor/footer): delay the import of Monaco's MarkerSeverity until window is defined
2025-04-07 12:05:17 +08:00
cfngc4594
3e5e2d2a62
feat(dockview): support dynamic Lucide icons via string in tab headers
2025-04-07 10:32:58 +08:00
cfngc4594
9a51c1547f
feat(problems): add inactive state to dockview panels
2025-04-06 20:38:51 +08:00
cfngc4594
e2e68ed604
fix(docker): include generated files in builder stage
2025-04-06 18:42:05 +08:00