Commit Graph

197 Commits

Author SHA1 Message Date
bc7b7e3b8a feat(components/ui): add Avatar component from shadcn/ui 2025-03-12 15:19:41 +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
2bc704a818 feat(loading): add Loading component 2025-03-11 22:40:21 +08:00
aaa4c1def5 fix(mdx-components): restore list decoration for ordered and unordered lists
- Restored default list decorations (bullet points for `ul` and numbers for `ol`).
- Solution based on issue from `sindresorhus/github-markdown-css#103`.
2025-03-10 20:41:53 +08:00
28a4b0631d refactor(code-editor): update editor change handler and remove unused event parameter 2025-03-09 11:50:23 +08:00
a691992404 fix(code-editor): improve template handling and default value logic 2025-03-09 11:22:40 +08:00
6297419aad feat(code-editor): persist code changes and apply problem templates 2025-03-09 10:48:03 +08:00
a78431fb61 fix(playground): update file path 2025-03-08 21:17:31 +08:00
70626d0499 rename(header): rename Header to WorkspaceHeader 2025-03-08 17:58:50 +08:00
b2e358de1b style(banner): update component with background color and layout changes 2025-03-07 15:31:22 +08:00
0159998234 refactor(components): replace custom pre component with shared Pre component for MDX preview 2025-03-07 11:43:41 +08:00
f1b6e86123 feat(components): add MdxRenderer for rendering MDX content with custom styling and syntax highlighting 2025-03-07 11:37:24 +08:00
9eb6f89587 feat(components): create MdxComponents for custom rendering of MDX content 2025-03-07 11:36:53 +08:00
c0a876322c refactor(component): migrate code block with copy feature to a more reusable pre component 2025-03-07 11:34:17 +08:00
56905f7e20 feat(settings-dialog): replace placeholder content with AppearanceSettings component 2025-03-06 23:25:23 +08:00
8f6a4aee20 feat(appearance-settings): add theme selection component 2025-03-06 23:22:40 +08:00
2a42c711bf refactor(mdx-preview): replace next-themes with useMonacoTheme 2025-03-06 21:29:52 +08:00
af59e0f432 feat(components/ui): add Radio Group component from shadcn/ui 2025-03-06 21:25:18 +08:00
93c6e66d78 feat(components/ui): add Table component from shadcn/ui 2025-03-06 16:41:19 +08:00
5f79671aa5 refactor(code-editor): dynamically fetch lspConfig from LanguageServerConfig 2025-03-05 13:29:17 +08:00
d33f214450 refactor(button): refactor ResetButton to accept value prop 2025-03-05 08:34:54 +08:00
527c52abbc feat(editor): refactor code editor with LSP support and state management 2025-03-05 00:33:19 +08:00
d89a45daa8 feat(editor): update loading state with padding and refactor dynamic import 2025-03-04 21:26:51 +08:00
0c1ecbcff2 feat(editor): initialize CoreEditorLsp component 2025-03-04 21:05:23 +08:00
598ca75829 feat(editor): add default editor options configuration 2025-03-04 21:02:16 +08:00
d8fa37dd8a feat(theme): add MonacoTheme enum, configuration and hook 2025-03-04 20:06:33 +08:00
6cf241b57b refactor(settings-dialog): update sidebar navigation items and cleanup imports 2025-03-03 15:50:00 +08:00
70d30c6cc6 refactor(settings): integrate Zustand store for navigation state management 2025-03-03 15:39:32 +08:00
4f7f367320 feat(settings-dialog): improve scroll behavior with ScrollArea 2025-03-03 15:24:35 +08:00
07c625d310 feat(header): add SettingsDialog and toggle its visibility via SettingsButton 2025-03-03 15:10:06 +08:00
09ef2bf22a feat(components/ui): add Sidebar-13 component from shadcn/ui 2025-03-03 14:51:13 +08:00
aa255fc2e1 refactor(store): rename useCodeEditorState to useCodeEditorStore in imports 2025-03-03 14:20:25 +08:00
eab8743095 feat(header): add settings button to header 2025-03-03 11:40:05 +08:00
1d81013122 feat(components): add settings button component with tooltip 2025-03-03 11:39:02 +08:00
4be37fdf1e feat(components/ui): add Tooltip component from shadcn/ui 2025-03-03 10:33:43 +08:00
524cce5a73 fix(code-editor): ensure localStorage access is safe in non-browser environments 2025-03-02 14:39:04 +08:00
2ebda52857 feat(code-editor): persist editor value in local storage 2025-03-02 00:05:42 +08:00
164eb3f0f5 feat(code-runner): implement execution result persistence 2025-03-01 21:23:44 +08:00
04794a34c7 feat(components/run-code): add code execution with loading state 2025-03-01 17:12:32 +08:00
89dfc9a1c8 feat(header): add Header component with RunCode integration 2025-02-26 21:54:49 +08:00
a0b1327db7 feat(run-code): add RunCode component for executing code 2025-02-26 21:54:44 +08:00
800c35cb01 feat(code-editor, mdx-preview): update loading state padding for improved aesthetics 2025-02-26 15:58:40 +08:00
0fa89804bc feat(code-editor): enhance loading state with padding and rounded corners for better aesthetics 2025-02-26 15:16:24 +08:00
e108244121 feat(mdx-preview): enhance loading state with padding and rounded corners for better aesthetics 2025-02-26 15:08:27 +08:00
89ea5b4684 feat(mdx-preview): integrate CodeBlockWithCopy for enhanced code block functionality 2025-02-26 14:32:11 +08:00
ff682d8ca2 feat(mdx): add CodeBlockWithCopy component for enhanced code copying functionality 2025-02-26 14:32:06 +08:00
037f8f625d fix(mdx-preview): comment out unused rehype plugins and adjust ScrollArea max height 2025-02-26 11:34:46 +08:00
844e9f0cca fix(mdx-preview): adjust max height calculation for ScrollArea component 2025-02-26 11:05:33 +08:00
e8778df846 fix(banner): update className to prevent flex item shrinkage in Banner component 2025-02-26 09:42:01 +08:00
d19c0c9ea1 feat(editor): enhance WebSocket connection management in CodeEditor 2025-02-26 00:41:19 +08:00
780908e4d3 feat(component/ui): add Select component from shadcn/ui 2025-02-25 21:33:17 +08:00
2e33dea853 feat(mdx-preview): add support for math rendering with KaTeX 2025-02-25 15:09:44 +08:00
50d1f4cf8e refactor(editor): update editor configuration paths and values 2025-02-25 14:39:55 +08:00
4557cee251 fix(code-editor): simplify onMount callback parameters for clarity 2025-02-24 13:34:56 +08:00
396ab19e2e fix(code-editor): update parameter name in onMount callback for clarity 2025-02-24 13:32:19 +08:00
c0d0021b6c feat(code-editor): add editor state handling to CodeEditor component 2025-02-24 13:22:12 +08:00
93bcd45c8a fix(editor): update height classes for code editor and MDX preview components 2025-02-24 12:32:48 +08:00
3b89e5de0e fix(editor): adjust height calculation for code editor and MDX preview components 2025-02-24 11:45:31 +08:00
21cb011980 fix(playground): add bg-muted class to ScrollArea for better visibility 2025-02-23 20:42:57 +08:00
88be7cbf58 fix(layout): adjust height calculations for improved layout consistency 2025-02-23 20:31:28 +08:00
d5cda08a3e feat(components/ui): add Badge and Tabs components from shadcn/ui 2025-02-23 16:37:12 +08:00
6f2d853531 feat(code-editor): use default file path for code editor based on language 2025-02-23 16:11:53 +08:00
4cd56f6fab refactor(option): Rename code-editor-options.ts to option.ts and add wordWrap option
Renamed code-editor-options.ts to option.ts and added the wordWrap: "on" option to enable word wrapping in the code editor.
2025-02-23 15:05:46 +08:00
f7e94564be feat(components/mdx-preview): add rehype-slug and rehype-autolink-headings for MDX previews
This commit adds `rehype-slug` and `rehype-autolink-headings` to the MDX preview component.

- `rehype-slug` generates unique IDs for headings.
- `rehype-autolink-headings` adds anchor links to headings, improving navigation.

This enhances the usability of MDX previews by enabling users to easily link to specific sections within the content.
2025-02-23 15:02:36 +08:00
b2b6d1e484 feat(code-editor): Merge editor options and support dynamic font and line height adjustment
- In the CodeEditor component, merged the default CODE_EDITOR_OPTIONS with dynamic options returned by useCodeEditorOption to support runtime font size and line height adjustments.

- Additionally, added the useCodeEditorOption hook to useCodeEditor.ts to manage the state of font size and line height.

- This allows users to dynamically adjust the editor's display properties.
2025-02-23 14:23:59 +08:00
5af57fbfcf refactor(code-editor): improve commented validation logging for better debugging 2025-02-23 13:56:11 +08:00
9e1bca2cce feat(code-editor): enhance language client integration with dynamic server configuration 2025-02-23 13:55:37 +08:00
9aa8b7e211 refactor(code-editor): optimize dynamic imports and code structure 2025-02-22 11:47:00 +08:00
2b5b4dee57 fix(banner): wrap link in a paragraph for better semantic structure 2025-02-21 21:20:52 +08:00
a699fc8069 refactor(components): rename problem-description.tsx to mdx-preview.tsx 2025-02-21 21:06:06 +08:00
e74e2e3102 feat(components/ui): add Resizable component from shadcn/ui 2025-02-21 20:02:31 +08:00
8f5be0e437 feat(layout): implement app layout with banner and code editor components 2025-02-21 19:49:56 +08:00
9a04f90538 feat(code-editor): adjust height calculation for code editor component 2025-02-21 19:49:50 +08:00
b8100570e3 feat(problem-description): import mdx.css for enhanced styling 2025-02-21 01:39:58 +08:00
17894b6e96 feat(mdx): implement MdxPreview component with error handling and loading state 2025-02-21 00:08:21 +08:00
62ccb1fbcc feat(banner): add Banner component for project promotion with GitHub link 2025-02-21 00:07:45 +08:00
3f3b153c4b feat(problem-description): Use compileMDX with remarkGfm for MDX rendering 2025-02-20 18:46:20 +08:00
7db6f4e20e feat(components): add ProblemDescription component to render markdown
- Added ProblemDescription component that uses MDXRemote to render markdown content.
- Includes a Skeleton loader while content is loading and a horizontal scrollbar.
- Wrapped content in a ScrollArea with a max-height limit for better UI experience.
2025-02-20 17:58:49 +08:00
a4a037f5a4 feat(components/ui): add Scroll Area component from shadcn/ui 2025-02-20 15:56:55 +08:00
162825250b feat(code-editor): add loading skeleton for dynamic editor component 2025-02-20 15:43:03 +08:00
d3d27768fb feat(code-editor): update default value for code editor based on language 2025-02-20 14:14:04 +08:00
6329babfca feat(code-editor): use Zustand state for dynamic language selection 2025-02-20 14:06:13 +08:00
75f1e656e6 chore(editor): comment out onValidate function in CodeEditor component 2025-02-20 09:17:31 +08:00
07e3707c3f feat(editor): use predefined options for code editor configuration 2025-02-20 09:11:31 +08:00
3f2bc8c332 chore: replace hardcoded WebSocket URL with environment variable
- Replaced the hardcoded LSP WebSocket URL with a configurable environment variable (NEXT_PUBLIC_LSP_C_URL).
- Default to "ws://localhost:4594/clangd" if the environment variable is not set.
2025-02-20 08:44:11 +08:00
f0b2428e8b fix(code-editor): adjust loading skeleton padding for improved layout 2025-02-20 01:05:30 +08:00
63501a3f6c feat(code-editor): refactor layout structure and improve editor height handling 2025-02-20 00:59:53 +08:00
423951ec58 feat(code-editor): update theme handling and optimize highlighter integration 2025-02-20 00:30:45 +08:00
fd48fa0fff feat(code-editor): integrate Shiki highlighter for enhanced syntax highlighting 2025-02-19 23:03:11 +08:00
9c9ed0ddd0 refactor: Move code editor logic to CodeEditor component 2025-02-19 22:46:30 +08:00
c195dffc10 feat(theme): Add ModeToggle component for theme switching 2025-02-19 22:45:30 +08:00
98fc2c75ef feat(component/ui): add Button and DropdownMenu components from shadcn/ui 2025-02-19 22:41:26 +08:00
73aae933ee feat(component/ui): add Toggle component from shadcn/ui 2025-02-19 21:44:24 +08:00
273c8e6b67 feat(theme): add ThemeProvider component for theme management 2025-02-19 21:20:12 +08:00
baeafb92dd feat(components/ui): add Skeleton component from shadcn/ui 2025-02-19 11:12:29 +08:00