Commit Graph

250 Commits

Author SHA1 Message Date
2f0547aa58 feat(problem-editor): add feature to preload problem information if there already has had data in database
- 添加了数据预加载功能,通过 getProblemData API 获取题目信息
- 优化了各个编辑面板的实现,提高了代码复用性和可维护性- 新增了测试用例编辑功能,支持多输入参数的管理
- 改进了题解编辑面板,增加了预览和对比功能
- 统一了表单元素的样式和交互方式,提升了用户体验
2025-06-20 17:37:00 +08:00
9c96e11ecc feat(problem-editor): realize backend for save problem edit
- 在编辑面板组件中添加 onUpdate属性,用于处理数据更新
- 新增 updateProblem 函数,实现问题数据的更新逻辑
- 在问题编辑页面中集成更新功能,实现即时保存
2025-06-20 17:37:00 +08:00
712813eee6 refactor(creater): optimize problem-creater
-为 edit-description-panel 和 edit-solution-panel 组件添加 Card 组件包装,提升视觉效果
- 用 CoreEditor 组件替换原有的 Textarea,增强编辑功能
- 优化组件结构,提高可维护性和可扩展性
2025-06-20 17:37:00 +08:00
794872105f feat(问题编辑): add problem-editor page
- 添加了编辑问题描述、解决方案、详细信息、代码模板和测试用例的组件
- 实现了问题编辑页面的基本布局和功能
- 增加了富文本预览和对比功能
- 支持多种编程语言的代码编辑- 提供了测试用例的添加和删除功能
2025-06-20 17:37:00 +08:00
acca25bd65 refactor(components): 重构 AI优化编辑器
- 将 AIProblemEditor 组件改为 AIEditorWrapper 组件
- 移除与语言服务器相关的逻辑和状态管理- 简化了代码结构,提高了组件的可复用性和可维护性
- 优化了 AI 代码优化功能,增加了应用优化结果的按钮
-调整了样式,使界面更加直观
2025-06-20 17:37:00 +08:00
fee5dfccdf feat: migrate prototype of ai-optimized-editor feature 2025-06-20 17:37:00 +08:00
56618fd335 refactor: flexlayout 2025-06-20 17:37:00 +08:00
058cb2d766 feat(ui): add all Shadcn components 2025-06-20 17:37:00 +08:00
941f1a74fa feat: replace dockview with flexlayout-react 2025-06-13 14:03:17 +08:00
1c031ce24e refactor(judge-button): migrate run code button to standalone component
- Replace RunCodeButton with new JudgeButton component
- Use problem-specific stores instead of playground stores
- Implement new judge toast notification system
- Simplify authentication check logic
- Utilize new TooltipButton component
2025-05-14 17:04:03 +08:00
9003e4b5a4 refactor(components): simplify BackButton by using TooltipButton 2025-05-13 17:38:26 +08:00
9766dea138 refactor(back-button): relocate and rename back button component
- Move from features/problems/components to shared components directory
- Rename NavigateBackButton to simpler BackButton
- Update component interface naming to BackButtonProps
- Keep all existing functionality intact
2025-05-13 16:43:01 +08:00
5aec2ec323 refactor(mdx-render): simplify theme configuration and change export style
- Remove custom Monaco theme imports
- Use github default themes for rehypePrettyCode
- Change component export from default to named export
2025-05-13 16:27:46 +08:00
aec8393d2d feat(dockview): export Dockview component and create ProblemDockview wrapper
- Export Dockview component from src/components/dockview.tsx to make it reusable
- Create new ProblemDockview component in src/features/problems/components/dockview.tsx that:
  - Integrates with next-intl for locale handling
  - Connects to problem-dockview store
  - Wraps Dockview with problem-specific configuration
  - Adds locale-based key for proper re-rendering
- Maintain existing Dockview functionality including:
  - Layout persistence
  - Panel management
  - API handling
2025-05-13 16:08:33 +08:00
ad2aca2f67 refactor(language-selector): migrate to new location and implementation
- Remove old language selector from `src/components/features/playground/workspace/editor/components`
- Add new implementation in `src/features/problems/code/components/toolbar/controls`
- Update toolbar exports to include the new selector
2025-05-13 15:18:59 +08:00
2efdc21419 refactor(i18n): replace language-settings with locale-switcher
- Replace react-world-flags with next/image for better optimization
- Simplify locale handling logic and remove unused getUserLocale
- Rename component to be more descriptive (language-settings -> locale-switcher)
- Update all references to use the new component
- Add proper SVG flag assets for supported locales
- Remove react-world-flags dependency from package.json
2025-05-13 00:19:01 +08:00
baf377b722 refactor(loading): change to named export and arrow function
- Switch from default export to named export
- Convert component to arrow function
- Remove unused props parameter
2025-05-09 09:40:25 +08:00
f93224f56e chore(components): remove unused problem-related components
- Delete footer.tsx from problem/description
- Delete solution.tsx from problem/description
- Delete header.tsx from problem/workspace/editor/components
2025-05-07 14:59:17 +08:00
1db666a2ab refactor(structure): reorganize page and component exports
- Move root page from /(app) to / directory
- Convert default exports to named exports in components
- Rename MainView component to HeroSection for better semantics
2025-05-07 14:06:31 +08:00
3417d2ee49 refactor(editor): consolidate editor toolbar actions into unified structure
- Moved all editor action buttons (copy, format, undo, redo, reset) from `src/components/features/playground/workspace/editor/components/` to new location `src/features/problems/code/components/toolbar/actions/`
- Introduced shared `TooltipButton` component to reduce duplication
- Created centralized `useProblemEditorActions` hook for common editor operations
- Updated imports and exports through new index file
- Maintained all existing functionality while improving code organization
2025-05-07 13:42:08 +08:00
6c9351ccd2 feat(components): add TooltipButton component
- A reusable button with tooltip functionality
- Supports customizable delay, tooltip content, and className
- Uses shadcn/ui Tooltip and Button components
2025-05-07 13:32:26 +08:00
2e19c08e8b refactor(mdx-renderer): simplify component implementation
- Remove Suspense and Skeleton loading state
- Convert to arrow function syntax
- Reorganize import statements
- Simplify export syntax
2025-05-07 13:31:02 +08:00
aed942e7e2 refactor(layouts): overhaul problem and problemset page structures
- Simplify ProblemLayout to use children prop and remove ProblemStoreProvider
- Replace PlaygroundHeader with dedicated ProblemHeader component
- Streamline ProblemsetLayout with new ProblemsetHeader
- Remove deprecated BackButton in favor of NavigateBackButton
- Delete unused ProblemStoreProvider and related dependencies
2025-05-06 21:22:13 +08:00
f464fb7636 feat(dockview): refactor dockview component and add problem-specific implementation
- Refactor Dockview component into more modular structure:
  - Extract layout persistence logic to custom hook
  - Extract component conversion logic to custom hook
  - Make storageKey optional
  - Improve type safety with PanelParams interface
  - Add better error handling and duplicate panel detection
- Add new ProblemDockview wrapper component:
  - Integrates with problem-dockview store
  - Adds locale awareness
  - Provides standardized storage key
- Update related type definitions and imports
2025-05-06 18:45:08 +08:00
500113fe8f feat(user-avatar): refactor avatar component into user-avatar with improved structure 2025-05-05 18:39:47 +08:00
a3ef5d88e6 refactor(auth)!: remove components and rewrite sign-in page 2025-05-05 18:21:08 +08:00
443adf055b feat(editor): configure Monaco workers using URL imports for better bundling 2025-04-20 01:11:38 +08:00
64182bccc6 fix(dockview): move panel titles from options to params to prevent i18n title persistence in layout 2025-04-19 12:53:39 +08:00
f40a8d3821 perf(language-settings): make locale change handling async with await 2025-04-19 10:53:34 +08:00
f2d14d07b2 feat(home): Add PrimaryFeatures component
- Add PrimaryFeatures component with MobileFriendlyCard, DockerCard, and LSPCard.
- Update HomePage to include PrimaryFeatures component between MainView and FAQs.
2025-04-17 21:42:58 +08:00
fcb75269eb feat(components/ui): add Card component from shadcn/ui 2025-04-17 16:49:35 +08:00
5e7ef4a99d feat(home): replace homepage redirect with actual content 2025-04-17 16:45:49 +08:00
f39bbf76e7 feat(submissions): add login requirement for submissions page
- Add SubmissionLoginButton component for unauthenticated users
- Modify submissions page to check auth session
- Filter submissions by current user when logged in
2025-04-17 09:31:04 +08:00
58222795fe chore(avatar): update default image to use local shadcn.jpg 2025-04-16 15:48:06 +08:00
1d0b74136f refactor(i18n): replace hardcoded texts with i18n message keys for auth 2025-04-16 00:40:36 +08:00
4428a29306 refactor(i18n): replace hardcoded texts with i18n message keys 2025-04-15 18:22:21 +08:00
5465450143 feat(auth): update sign-in and sign-up flow with redirect support 2025-04-14 21:27:06 +08:00
799ab3ccd1 refactor(avatar-button): remove unnecessary account and notification items from dropdown menu 2025-04-14 17:59:52 +08:00
59e133f29c feat(submissions-table): update table to display detailed status message 2025-04-14 16:53:58 +08:00
f53807338a refactor(submission-table): switch to SubmissionWithTestcaseResult to support testcase results 2025-04-14 14:15:16 +08:00
2a4d741a76 feat(submissions): show language label alongside icon in submissions table 2025-04-14 10:26:57 +08:00
01c2cd6eef refactor(description-form): simplify form to use basic input instead of markdown editor 2025-04-13 22:45:33 +08:00
b35ef0208a feat(submissions-table): add click handler to open details panel 2025-04-13 22:43:01 +08:00
e7ad3a66e6 style(testcase-form): reorder input props and make inputs read-only 2025-04-13 13:22:47 +08:00
8b3faf4a42 feat(submissions): improve submission table with icons and better status display 2025-04-13 13:18:10 +08:00
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
0de139f29c refactor(bot-toggle): inline Bot panel config and remove DefaultDockviewOptions dependency 2025-04-13 11:41:58 +08:00
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
737965dc91 style(submissions-table): replace odd row styling with even row check logic 2025-04-13 11:23:58 +08:00
8809dbdb1a feat(run-code): activate Submissions panel after running code 2025-04-12 13:38:57 +08:00