diff --git a/frontends/nextjs/src/components/CssClassBuilder.tsx b/frontends/nextjs/src/components/CssClassBuilder.tsx
index aaa4f2808..4672a3889 100644
--- a/frontends/nextjs/src/components/CssClassBuilder.tsx
+++ b/frontends/nextjs/src/components/CssClassBuilder.tsx
@@ -97,12 +97,6 @@ export function CssClassBuilder({ open, onClose, initialValue = '', onSave }: Cs
}
}, [activeTab, filteredCategories, open])
- const loadCssClasses = async () => {
- const classes = await Database.getCssClasses()
- const sorted = classes.slice().sort((a, b) => a.name.localeCompare(b.name))
- setCategories(sorted)
- }
-
const toggleClass = (cssClass: string) => {
setSelectedClasses(current => {
if (current.includes(cssClass)) {
diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeEmptyState.tsx b/frontends/nextjs/src/components/nerd-mode-ide/NerdModeEmptyState.tsx
new file mode 100644
index 000000000..3f0847aa7
--- /dev/null
+++ b/frontends/nextjs/src/components/nerd-mode-ide/NerdModeEmptyState.tsx
@@ -0,0 +1,12 @@
+import DescriptionOutlinedIcon from '@mui/icons-material/DescriptionOutlined'
+
+export function NerdModeEmptyState() {
+ return (
+
+
+
+
Select a file to edit
+
+
+ )
+}
diff --git a/frontends/nextjs/src/components/nerd-mode-ide/NerdModeGitPanel.tsx b/frontends/nextjs/src/components/nerd-mode-ide/NerdModeGitPanel.tsx
new file mode 100644
index 000000000..692bbf3d0
--- /dev/null
+++ b/frontends/nextjs/src/components/nerd-mode-ide/NerdModeGitPanel.tsx
@@ -0,0 +1,83 @@
+import CallSplitIcon from '@mui/icons-material/CallSplit'
+import CloudDownloadIcon from '@mui/icons-material/CloudDownload'
+import CloudUploadIcon from '@mui/icons-material/CloudUpload'
+import SettingsIcon from '@mui/icons-material/Settings'
+import { Badge } from '@/components/ui'
+import { Button } from '@/components/ui'
+import { Input } from '@/components/ui'
+import { Label } from '@/components/ui'
+import { Separator } from '@/components/ui'
+import type { GitConfig } from './types'
+
+interface NerdModeGitPanelProps {
+ gitConfig: GitConfig | null
+ gitCommitMessage: string
+ onCommitMessageChange: (value: string) => void
+ onGitPush: () => void
+ onGitPull: () => void
+ onOpenConfig: () => void
+}
+
+export function NerdModeGitPanel({
+ gitConfig,
+ gitCommitMessage,
+ onCommitMessageChange,
+ onGitPush,
+ onGitPull,
+ onOpenConfig,
+}: NerdModeGitPanelProps) {
+ return (
+
+
+
+
Git Operations
+ {gitConfig ? (
+
+
+ {gitConfig.provider}
+ {gitConfig.repoUrl}
+
+
+
+ {gitConfig.branch}
+
+
+ ) : (
+
No Git configuration found
+ )}
+
+
+
+
+
+
+
+ onCommitMessageChange(e.target.value)}
+ className="mt-1"
+ />
+
+
+
+
+
+
+
+
+
+
+
+ )
+}