From 032258b260ac88ee26057e595f454bda4119db79 Mon Sep 17 00:00:00 2001 From: Haileyesus <118998054+blackmammoth@users.noreply.github.com> Date: Mon, 29 Jun 2026 23:45:00 +0300 Subject: [PATCH] style(ui): rework light/dark theme to make it visually consistent Rework the color system around warm neutrals and route hardcoded surfaces through theme tokens for consistency. - Theme tokens (index.css, ThemeContext): warm cream light mode and neutral charcoal dark mode, replacing the pure-white/blue-tinted palette; update PWA theme-color meta - Code blocks: soft grey background in light mode via oneLight/oneDark, and drop the Tailwind Typography
 shell that
  framed the highlighter in a dark box
- Dropdowns/panels: convert CommandMenu, Quick Settings, and the JSON
  response block from hardcoded gray/slate to popover/muted/border
  tokens
- Git panel: Publish button purple -> primary blue
- Composer: drop top padding so the input sits flush with the thread
---
 .../chat/view/subcomponents/ChatComposer.tsx  |  2 +-
 .../chat/view/subcomponents/CommandMenu.tsx   | 22 ++---
 .../chat/view/subcomponents/Markdown.tsx      | 17 +++-
 .../view/subcomponents/MessageComponent.tsx   |  6 +-
 .../markdown/MarkdownCodeBlock.tsx            | 12 ++-
 .../markdown/MarkdownPreview.tsx              |  3 +
 .../git-panel/view/GitPanelHeader.tsx         |  2 +-
 .../quick-settings-panel/constants.ts         |  2 +-
 .../view/QuickSettingsContent.tsx             |  8 +-
 .../view/QuickSettingsPanelHeader.tsx         |  6 +-
 .../view/QuickSettingsSection.tsx             |  2 +-
 .../view/QuickSettingsToggleRow.tsx           |  4 +-
 src/contexts/ThemeContext.jsx                 |  4 +-
 src/index.css                                 | 90 +++++++++----------
 14 files changed, 98 insertions(+), 82 deletions(-)

diff --git a/src/components/chat/view/subcomponents/ChatComposer.tsx b/src/components/chat/view/subcomponents/ChatComposer.tsx
index bb1c4a45..c021d919 100644
--- a/src/components/chat/view/subcomponents/ChatComposer.tsx
+++ b/src/components/chat/view/subcomponents/ChatComposer.tsx
@@ -197,7 +197,7 @@ export default function ChatComposer({
   const hasPendingPermissions = pendingPermissionRequests.length > 0;
 
   return (
-    
+
{!hasPendingPermissions && ( )} diff --git a/src/components/chat/view/subcomponents/CommandMenu.tsx b/src/components/chat/view/subcomponents/CommandMenu.tsx index 580ec92c..51b90e09 100644 --- a/src/components/chat/view/subcomponents/CommandMenu.tsx +++ b/src/components/chat/view/subcomponents/CommandMenu.tsx @@ -226,7 +226,7 @@ export default function CommandMenu({ return renderInPortal(
{orderedNamespaces.map((namespace) => (
{orderedNamespaces.length > 1 && ( -
+
{namespaceLabels[namespace] || namespace} - + {(groupedCommands[namespace] || []).length}
@@ -273,15 +273,15 @@ export default function CommandMenu({ aria-selected={isSelected} className={`command-item group relative mb-1 flex cursor-pointer items-start gap-2 rounded-md border px-2.5 py-2 transition-all ${ isSelected - ? 'border-sky-200 bg-sky-50 shadow-sm dark:border-cyan-400/30 dark:bg-cyan-400/10' - : 'border-transparent bg-transparent hover:border-gray-200 hover:bg-gray-50/90 dark:hover:border-slate-700 dark:hover:bg-slate-900/80' + ? 'border-primary/30 bg-primary/10 shadow-sm' + : 'border-transparent bg-transparent hover:border-border hover:bg-accent' }`} onMouseEnter={() => onSelect && commandIndex >= 0 && onSelect(command, commandIndex, true)} onClick={() => onSelect && commandIndex >= 0 && onSelect(command, commandIndex, false)} onMouseDown={(event) => event.preventDefault()} > {isSelected && ( - + )}